GDKOI2016总结
2016-02-24 20:36
218 查看
Preface
这是我第三次参加GDKOI,前几天的模拟赛已经使我慢慢进入状态了。这次比赛成绩不错,不过也有值得反思的地方。Day1
这次比赛人比上次多了大约一倍,所以有两个考场,我们是在二中的考场考的,刚开始就出了问题,导致机房全部机重启,晚了半个小时开考。。。看完题后,感觉前三题都是可做的,然后第四题就是直接放弃了。
T1:最先做的题,我打了10棵线段树来维护。这些数据结构维护很多个值的题,常数一般较大,所以我弄了不少常数优化,也调了半个小时,结果还没调出来,就中途打了个第三题,回来把这道题调出来了。也对拍过了,但是最大数据跑了1.6s,然后又想不出什么优化了(其实当时我还多维护了两个值,可以删去)。结果评测这题用了虚拟机,最后两个点TLE了QwQ
T2:打了个dp,设f[i]表示i到n的期望,然后也写出了转移方程,但是问题出在了考虑一个从i出发的传送门的选择顺序上:最先我感觉按照传送门v——>u的u升序排序是对的(没有在草稿纸上推算过),但是在结束前10分钟我突然想起这个顺序的问题,结果错误地认为排序没有用,就一时冲动删了排序。。。结果少了100分
T3:水了60分。题目读了几次也没有发现些什么,直到下午讲题才发现这是最大权闭合子图。。
T4:4个小时也没有写这题的暴力。。正解是插头DP,没有见过的题型,还是值得去研究的!
晚上思考了一下人生,然后就是迎接day2
Day2
感觉今天的题似乎更可做了,但是能不能拿完能拿的分是一个问题。。T1:博弈问题,而且是非常水的一道,打个记忆化搜索就行了。刚码完后就过了样例,但是后来试了几个小数据都输出-1,然后发现代码有问题,因为样例就有292^9 个状态,有点难调试,所以弄了差不多一个小时。
T2:经过分析后发现是一个数位DP,然后很快码完,但是在处理n位(假设S有n位)的时候出错了,花了一点时间。
T3:我对这题连续产生了两个错觉:
1. 认为这题很复杂。然后我分类讨论,弄出各种情况,打了Manacher+扩展KMP+主席树,代码量估计4000+,然后在最后的时间没有打完,只交了个输出len的代码。
2. 在后来发现这题只是把原串复制一份之后,只是找个长度和小于等于len的双回文串。然后十分激动地在下午讲了这题,结果在处理长度大于n的时候发现自己错了,被一个用脚趾头算出来的反例打了脸(嘿嘿)。不过也收获匪浅!
T4:是道小学生数学题(雾)。我卡在了求逆元这个问题上,所以暴力也没有打。。正解也值得深究。
总结
这次比赛day1(80+0+60+0),day2(100+90+0+0),水了个初中第二。能拿到的分基本拿到了,也没在难题上花太多时间。但是还有几个小问题:1. 注意常数优化,如day1 t1我多维护了两个值
2. 理解题意,如day1 t3没有完全读懂,水60分只是随机事件。
3. 细节。day2 t2我错了一个点,是因为t=0的时候我没有特判,返回值为1.
4. 不要在最后手贱,day1 t2就是因此而爆0
比赛中的day1 t4,day2 t3、t4都是值得研究的,感觉这次比赛收获颇丰,现在就是要看向5月的GDOI了!
相关文章推荐
- Struts2之文件上传
- OutputStream和InputStream流的结构
- Java-反射机制学习
- 新项目的架构(杂记)
- 工厂模式(工厂方法),抽象工厂模式
- Android设置屏幕保持长亮
- Experimental Educational Round: VolBIT Formulas Blitz F
- mini2440烧卡失败的两个原因总结
- 51nod 1495 中国好区间
- 微信公众平台开发: 获取用户基本信息
- 在计算机视觉中的李群、李代数
- 如何编写函数才能提高代码质量总结
- POJ - 1915 Knight Moves
- Spring中自己主动装配
- 普通插入排序与成对插入排序
- NOIP2015 运输计划(二分+LCA+差分)
- CODEFORCES 629 C Famil Door and Brackets
- https://projecteuler.net/problem=7
- Anaconda下import caffe出现错误TypeError: 'module' object is not callable
- hdu 1257 最少拦截系统