CF&At记录1

CF1916

第一次熬夜打CF,感觉还行,可能是晚上人比较平静,思路就比较清晰。

  • A本来是没什么要说的,但是傻了没开long long,喜提FST!

  • B题最开始想复杂了,开始慌了,但是静下来想想就发现只有两种情况,分类讨论一下就出来了。

  • D题什么人类智慧题,幸好样例的给了提示,不然真不一定出的来。

    这里再给一个通用做法,题目要求 \(n\) 位的平方数, \(n\) 比较大(\(\le 99\)),但我们可以打表出一些位数小的平方数,再在末尾填上偶数个 \(0\),这样的数也是平方数。

  • E题比较常规,但是被 \(n=1\) 爆杀,以后注意....

等待落实F和H。

ARC159

  • A题对Floyd的理解还没有很深,只是感觉是对的就冲了。

    首先Floyd的DP是这样的:

    我们定义一个数组 f[k][x][y],表示只允许经过结点 \(V'=1,2,...,k\) 中的路径,节点 \(x\)\(y\) 的最短路长度。

    后面发现第一维是可以优化的。

    然后是 f[x][x]=0 。其实你如果设 f[x][x]=inf ,那么跑Floyd后的 f[x][x] 就会是 \(x\to x\) 且必须经过一条边的最短路径,你设置的 f[x][x]=0 相当于连了一条 \(x\to x\) 边权为 \(0\) 的边。

    所以此题中可以直接在原图中跑Floyd。

  • B题因为 \(A=B\) 的特殊情况WA了一发。

  • C题属于想到了就有,没想到就无的构造题。

    构造题还是要把操作转化为好处理的一般操作。

  • D题比较标准,但因为 memxet(f,0xcf) 不够小WA了一发....

    可以改成 0xbf

  • E题很有启发。

  • F题算是比较标准,准备补补官方题解的 \(O(n)\) 做法。

ABC342

  • F 算是比较简单的概率题。
  • G 题脑抽了,只想到了k-d tree的写法,结果可以标记永久化,这样对每个节点维护最大值就可以了。

ABC341

  • G题感觉很经典,将 \((i,S_i)\) 当成点,那么维护凸包就可以得到答案。

ABC340

  • G题是一个好题,先有 \(O(n^2)\) 的dp做法,然后通过启发式合并得到 \(O(n\log n)\) 做法。

    也有虚树做法,而且更清晰。

ARC173

  • VP打的,A题做的太慢了,只能说对这种计数的东西一定要想清楚再写。

  • B题是简单计算几何。

  • C题被卡了,基本的性质想出来了,用线段树实现的(sol里可以用set维护01的连续段)

    然后被 \(i=1,n\) 的时候给卡了...

  • D题算是结论题?在纸上画几个图猜一猜应该能猜到。

  • E题也算是一个比较有启发的题。

    知道了"给定 \(n\) 个数,求选出任意偶数个数的最大异或和"怎么写

    知道了"给定 \(n\) 个数,求选出 \(m\) 个数的最大异或和"大概率是没有关于 \(n\) 的多项式做法。

ARC171

  • AB题没什么好说的。
  • C题没有找到关键性质,可能还是需要一定的积累。
  • D题脑抽了....只要把\(H(l,r)=(h(1,r)-h(1,l))P^{r-l}\) 就可以了...
  • E题仔细想了半天,把问题转化成了计数题,最后在统计答案的时候有一点脑抽了,如果一个组合数出不来可以用一个循环的...

ARC170

  • AB没什么好说的。
  • C题很有意思,只要注意到为什么答案不是 \(m^k\) 就可以知道正确做法。
  • D题比较常规?反正正常做就可以了。

ARC162

  • E是比较有启发的计数题。
  • F也是计数题,画画图,讨论讨论,猜一下结论,然后就可以用dp来统计答案了。

CF1929

  • Vp的一场div2,AB没什么说的
  • C题比较有意思,但比较简单。(只要你看过zhihu的"如果你有一个按钮,\(1/2\) 使某个东西翻倍,\(1/2\) 使其消失"就应该能马上想到)
  • D的树上dp应该是很简单的,但没有想清楚而耽误了一些时间。
  • E题大概是有想法,但不确定就懒的写了。赛后看了题解,有效的可选集合的个数是 \(O(k)\) 的,但是当时的想法还是复杂了一点。
  • F题纯白给题,但赛时没看。

CF1924

  • VP的div1,A没什么好说的。
  • 然后被B题搞爆了..结果是输入的 \(x_i\) 不是递增的....大失误
  • 赛后5min过C,血亏。C提示我们遇到这种\(\frac{a+b\sqrt 2}{c+d\sqrt 2}\) 的情况放心大胆分母有理化。
  • 发现D题比C题更简单,只要把括号序列看成 \(+1,-1\),然后条件就变成了前缀和不超过 \(t\) ,然后就是组合数相减了。血亏。
  • E题很有启发。

CF1936

  • A题是一个比较有意思的交互题,只要先看看要求的有什么性质就可以做出来了。

  • B题就是细节很复杂。

  • C是比较有意思的最短路题。

  • D题这个数据结构想错方向了...也没注意到有效后缀只有 \(O(\log)\) 个。

    注意到了就还是比较好做的。

posted @ 2024-04-09 21:45  qwq_123  阅读(11)  评论(0编辑  收藏  举报