GDKOI总结

概述

第二年亦是最后一年GDKOI,然而还是一样的弱。
D1:30+0+20+30=80
D2:20+50+0+30=100
抱着拿部分分的心态参与考试….

Day1

T1:cardcaptor

位运算,线段树

刚开始时还理解错题意,因为着急的看下文,忽略了给出的例子.幸亏后面回头又看了一次题,才发现原先把问题想复杂了。
此题差一步就想到正解了。看到区间询问和单点修改,很自然的想到了线段树。
线段树的关键在两个区间的合并,然而在考场中并没有想到,怎么O(1)的快速合并。
实际上合并依旧是个暴力。结果在对拍的过程中才发现GG,效率跟暴力差不多……
题目中涉及到xor操作,因该将它拆解成每一位做,通过乘法原理,优化加法的计算。

下次遇到此类题,首先,应当有一双慧眼,相信自己的方法,大胆猜想。

T2:portal

概率!!我好像就没一次做对过此类题型…我到最后连样例是如何计算出来的都不知道.

T3:treasurehunt

有依赖关系的图,(最大权闭合子图+网络流),还真不知道…
那就看着拿暴力分吧。

T4:map

随便瞎搞个暴力

Day2

T1:coloring

博弈题!!同概率!!所以打了一个错误的搜索,只能保证先手最优化,后手最差化.
结果都能骗到20…

一定要好好恶补有关博弈和概率的问题…不然样例都不知道怎么来的…

T2:qt

这题没想到是数位DP,觉得要用高精度做,有点恶心,先拿了50分再说!!

T3:necklace2

看到题目直接回想起上次GDKOI,第一次知道了传说中M打头的算法O(N)出解.
然而,我已经忘光了,只能打O(N^2)的暴力,我的内心是崩溃的!!就算知道怎么打,也还是比较难.

只可惜不知评测时,为何我的程序文件操作挂了.可能是Pascal的文件读入我没测试吧!!

T4:math

刚开始看到这道题,还很高兴!!不就是循环一遍求一下乘法逆元…
结果做到后面发现有一些数是没有逆元的,直接GG。
本以为连30%都拿不到的,出了考场听其他人说有个限制n<p,就不会存在没有逆元的情况.
感谢出题人啊!!!求逆元也没白打,恰好在这之前做了两道有关扩展GCD的问题.

小结

  1. 考试策略基本正确,细心细致注意取mod数.
  2. 不管题目有多难,只要能看懂题目,能算出样例,就一定能打出暴力.
  3. 正解一般都与暴力的实现有关,注意数据范围和题目的类型,就能大致确定算法类型.
  4. 不管怎样对拍,小数据,大数据都不必可少,保证程序稳定,不挂.
  5. 理解清题目最重要,发现自己想不下去的时候.重看一遍题目,往往会有新的发现.

现有的问题及解决方案

题目理解是前提,样例提示都要看。
遇到难题不要慌,冷静分析是关键。
(编不下去了…)
多想1分钟,胜过多打10分钟的程序。
只要是自己熟悉的算法,打起来就没有什么难的。
现在缺的不是程序实现、调试。
而是对题目的思考和优化。