NOI模拟赛 5.21
赛时时间安排
7:00-7:20读完题感觉除了T1可能还比较可做以外,其它都不太可做,其它都不太可做,决定先看T1。
7:20-8:00今天莫名感到前所未有的疲惫,于是·趴着想题,经过\(O(n^ 5)\)、\(O(n^3\log n)\)、\(O(n^2 \log n)\) 最终想出了一个在不刻意构造数据下可能可以做到 \(O(n \log n)\) 的做法,决定从暴力开始一步步码.
8:00-8:30 码完了10pts暴力
8:30-9:00 码完了30pts暴力
9:00-10:10 兴高采烈地运行30pts,准备开始进一步优化,结果一部分答案WA了,找了半天才发现那个细节错误,此时已经10:10,就先去做后面了
10:10-10:30 码完了T3的20pts暴力
10:30-10:45 码完了T3的40pts暴力,
10:45-11:00 试图想T3的DP,没有想清楚
11:00-11:15 试图码T2,发现连搜索都不太会打
11:15-11:30 T1来不及进一步优化了,检查了检查各道题,准备交题
赛后总结反思
关于T1的调试
今天T1调试的时候,发现小数据拍不出错,肉眼查错又未果,于是有些发蒙,浪费了一些时间,最后才通过将大样例不同阶段的DP值分别输出的方式找到了错。
发现一道题肉眼查不出错、小数据拍不出错的情况下应该勇敢面对较大的数据,起码比干坐着强。
关于时间分配
10:45-11:00时不应该继续想T3,应该及早开码T2的暴力,或许就能多拿10pts
另外,打暴力也要按难度顺序来,T3的两档暴力明显比T1的两档暴力好打。
T2
T2涉及到了一类博弈问题的结论,翻到了讲述它的论文(GAME-THEORY-Thomas-S.Ferguson.pdf (mina.moe))
暂时节选重要结论部分记述于此,搞清楚后再做总结。
In this class of games, called Coin Turning Games, we are given a finite number of coins in a row, each showing either heads or tails. A move consists of turning over, from heads to tails or from tails to heads, all coins in a set of coins allowed by the rules of the game. The rules always specify that the rightmost coin turned over must go from heads to tails. The purpose of this is to guarantee that the game will end in a finite number of moves no matter how it is played (the Ending Condition). The rules also specify that the set of coins that may be turned over depends only on the position of the rightmost coin turned over and not otherwise on the position of the other heads and tails, or on the previous moves of the game, or on time, etc. Moreover, the games are impartial and the last player to move wins. Under these conditions, the same decomposition that worked for Turning Turtles also works for all these games, namely: A position with k heads in positions x1,...,xk is the (disjunctive) sum of k games each with exactly one head, where for j = 1,...,k the head in game j is at xj . For example, the game, T H H T T H, is the sum of the three games, T H, T T H, and T T T T T H. This implies that to find the Sprague-Grundy value of a position, we only need to know the Sprague-Grundy values of positions with exactly one head. In the example, g(T H H T T H) = g(T H) ⊕ g(T T H) ⊕ g(T T T T T H).
闲话
除了今天以外(今天😴 😴 😴), 这周大家都非常卷,每天做的题目数量甚至可以达到去清华营前的2倍左右,怎么说呢,希望自己能一直保持较高效率吧。