[考试反思]0719NOIP模拟测试6 + 0722NOIP模拟测试7
连续爆炸,颇为愉快。
第6次:Rank #4
第7次:Rank #9
对于第6次考试,个人比较满意,因为T1只是差了一个卡常。
因为在考试前两天刚讲了矩阵,满脑子都是矩阵,还想到了循环矩阵优化。
整个思路非常清晰没有问题,但是理论复杂度微超,数据点太强除了20%题目给出的小范围以外都没拿到。
最后采用int128,在矩阵乘法结束后统一取模,常数缩小几百倍?!过了。
正解是一个组合数,如果前一阵子没学矩阵的话可能就想出来了,但是思路被局限了。
T2数据点太水蹭过去了。n遍Dijk毫无素质。
正解是二分所有点对,每次都分成2组,保证所有点对之间都至少一次被分到不同组。
一共需要log次分组,跑出两组的点对最短路,与1号节点相连,更新答案。
T3好题嘛。。然而我在考场上隐隐约约地意识到了这是一个变式图论
把数当做点,卡当做边,这个我也想到了
感觉自己想不出来,最后只停留在这一步,止步于暴力
那场考试没有什么感觉。我也没什么想法。除了T1有点无奈?
发散思维!不要想最近学了什么。尝试多种方法,尤其在复杂度超限的时候。
日常卡常!矩阵乘法可以用高一级的数据类型存储,在乘法全部完毕后只取模一次。
接下来说说爆炸的厉害的第7次考试吧。
其实我应该是80分Rank#20,说来话长。
我觉得T3题面有歧义,去问教练
结果他点错了,我不小心看到了我T1的分数:30?!
我也不知道如果我没看见,我会不会去改T1
T1特判好题。你永远不知道你忽略了什么。
乍一眼看上去,ex_gcd模板啊!
模板怎么打?怎么证明?什么情况下无解?什么情况下无穷组解?
平时你真的学明白了吗?
学的时候背板子,做题的时候粘板子。全都暴露出来了。
知其然,知其所以然!
考场上花了将近一个小时去证明ex_gcd的正确性,手推它的模板。
虽说导致了这次考试过程中的大量时间浪费,但不会有第二次了。
我真的懂了!什么东西手推一遍就记住了!
而且考场上我并没有丢掉哪句特判,而是打错了一句。
如果a=0,b×c>0,b|c,那么有1组解。
傻子吧!b有1组解,a有无穷组啊!
在考场上一定要保证思路清晰,码出的每一句话都要过脑子。
然而T2什么的刚开始出了一道原题,心态很平和没有着急去码。
(因为我感觉就算是原题我也码不对)
结果换题了,考试时间延长10分钟。
新题是一个明显的组合数学,我的思路虽说清奇但是是对的。见题解。
然而忘了用Lucas了,用朴素Lucas就能减小很大的运算量。
曾经以为用不用Lucas只是运行时间的问题,结果竟然是WA的问题。
对于小质数,阶乘需要特殊处理。否则输出全是0。
而且,更滑稽的是,考场上一看到数据范围,明显CRT啊。
CRT怎么打?公式是啥?会证明吗?
1小时现场发明CRT。
最后因为没用Lucas爆成40分,套上ex或者动用Lucas直接A。
然而自己测试时怕大质数的分解打错,手膜的测试点都用1e9+7做的模数,没有暴露问题。
手模测试点在精不再多。要覆盖所有的数据类型。
T3心态比较平稳,我以为前两题挺稳的。
一看,纯粹模拟有60分,便着急地码了一个模拟。因为剩下的时间已经不多了。
结果东南西北没分清,还不知道怎么就过样例了。10分。。。
考后把两个const数组的两个数字交换了一下,60分。
然而考场上我还有最后30分钟,似乎想到了正解。
花了10分钟证明了结论1,也证明了我的做法的正确性。还剩20分钟。
在想要不要去拿20%的k=0的分值。放弃了,估计匆匆忙忙写不完,也调不出来。
决策是对的,4k是闹着玩的吗?
死而无憾。苟在Rank#9。
上去分享爆零经验还把T3正解讲了。我,,,,有什么用?
暑假起步非常差劲,下次,还能对得起自己吗?