• 模拟76


    $T1.$

      一开始想简单了。

      非常快得码完,刚交上去就发现自己好像伪了。。。。

      然后发现有一档部分分$A*B=N$,可以非常简单地构造。

      然后就想到正解了。

    $T2.$

      我们可以发现,在大部分情况下,答案都是连续的。

      那么我们只需要考虑,答案在什么地方会断开。

      显然只有相邻两个能被拼出的数$a_i$,$a_j$,并且$a_j$比$a_i$的2倍更大时才会出现不合法。

      进一步观察可以发现,这种情况只会出现在$a_i$为某些数的和,$a_j$为一个数时。

      于是排完序,前缀和扫一遍就没了。

    $T3.$

      考试的时候一直在想,前序遍历是啥。。。

      然后突然发现前序遍历好像就是$dfs$序,也就是说,每个点的子树序号是连续的一段。。。

      然后就可以设计$dp$转移了。

      另外,由于我考场上没有想到怎么保证合法,所以只能拿$bitset$判断合法性,极限数据跑了$3.5s$,然后我手写了$bitset$,它就从$3.5s$直接砍到了$1.2s$。甚至跑的比某些$O(n^3)$还快。。。。

      手写bitset牛逼bitset复杂度是O(1)的

  • 相关阅读:
    【转】SMARTY 不乱码截取中文
    godaddy最新优惠码
    javascript 学习之屏幕尺寸获取。
    IE6 实现minwidth
    css 修改页面选中时背景颜色
    jQuery 闪动的文字提示
    jQuery插件 blockUI
    HTML 5 video 视频标签全属性详解
    linux打包压缩命令汇总
    Windows 下MySQL zip 安装
  • 原文地址:https://www.cnblogs.com/hzoi-cbx/p/11689934.html
Copyright © 2020-2023  润新知