认真做,模拟最真实的退役情况
简单的场拿不够分,难的场分差被拉大,最终分数越排越后,D类都没有。
题目都很有gdoi的风格,就是要等考完之后才发现是水题。
这几场脑子很空。
day1,t2想到扫描线但不知道要用线段树维护什么,t3看到k很小只是想状压没想容斥,t4环上的部分就没想过枚举起点。
day2 做慢了,t1想到SA没时间想下去,t4点剖以后不会处理。
day3 就是都不知道应该往哪去想,t4暴力复杂度证错了写都不敢写。
很多东西就是,想到了觉得不可做然后就不想了,或者说不知道用什么方法解决就在乱想。想到了很多思路,都是正解靠边的,就是整理不起来。要加强的是分析题目性质的能力,需要一定的套路积累,也要很强的灵活性,又不能过于灵活不然容易想偏。
现在有个问题就是,我无法把握正解或者部分分的方向,想问题的深度和广度总是错误的,包括简单题也包括难题。做别人推荐给我的题,有些很显然的性质摆在眼前,我也会想偏。这个问题我不会解决,但我也不相信只有多刷题能解决。谁会解决谁教我吧,反正我跟正常人的思维周期性地合不在一起我也不知道为什么。我也不想老是追求大神的思维,然而靠自己确实是很多时候想不到正路。
我觉得说来说去都是现在想的东西太乱了,要睡个觉冷静一下,然后不带任何情绪地做题。
转载自 ZYQN’s Database,但是原文找不到了。
设我们要分解 $n$,$n=n_1n_2(n_1<=n_2)$,我们构造的序列为 $a_i$,$a_i~mod~n_1=b_i$
因为 $a_i$ 可近似看为随机序列,根据生日悖论可以推出其出现循环的期望步数为 $\sqrt n$,$b_i$ 同理。
因为 $n>n_1$,所以在 $b_i$ 循环之后,$a_i$ 有很大可能没有进入循环,此时 $a_i-a_j=(k_in_1+b_i)-(k_jn_1+b_j)=(k_i-k_j)n_1+(b_i-b_j)=(k_i-k_j)n_1$。于是求 gcd 即可求出 $n_1$。
因为 $b_i$ 的循环期望是 $\sqrt n_1$,而 $n_1<=\sqrt n$,所以最后是 $O(n^{\frac{1}{4}})$