钪钛钒铬锰,铁钴镍铜锌。
考前要冷静,考试中要多想,考试完要看氮(不过我觉得第一二点做到了第三条就不用管了)
考试过程
看到三个题,恩,
简单的XX
(**,一定不简单)
于是看:
T1
是区间的问题,
T2
$Theta(1)$左右的柿子题
T3
可能是$dp$
于是做:
先做T2
马上有了柿子?
现在还是$Theta(M)$的. qwq
验证了一下,可以过三个样例。
但是问题就又出在约分上。
如果要约分就没有办法取模。
问题转化为:
求某连乘对$2$约分后的值。
可以计算出分子中的因子$2$的数量$log M$
然后先取模运算,最后搞个逆元
目前:可过$10^7$左右(目标:$10^{18}$
现在就是要全力去优化两个环节:
- 快速求解出因子$2$的数量
- 快速求出一个连乘
所以现在可以用$Theta(log^2 M)$的复杂度求因子了。
用了一个小时了,先去看T1了
T1
先来个暴力。
如果要整除的话……没想法
也许可以记一个余数,然后乱搞
暴力也应该要$N^2$的
不敢分块了QwQ(每次分都爆)
各种数据结构在大脑中瑰丽华尔兹。
T3
好像上一次的T1
一个单调不下降的序列啊……
先预处理出每个数最前面和最后面的位置。
但是发现情况过多不好分析,
开始$Dp$。
但是时间不太够,
于是写成了 puts("-1") 自动机
但是还是骗了10分。
结果 - Result
13
|
Miemeng | 30
03:16:12
|
50
03:16:27
|
10
03:19:42
|
90
03:19:42
|
T2的$mod$写锅了,于是$WA$了两个点。