NOIP2017总结

NOIP2017已然过去,是时候做一番总结了。

Day1:
由于电脑并不是北京时间,一直以为多了20 - 30mins,最后半个小时听到广播才知道~
T1 是一道结论题,答案就是 a * b - a - b,当时推了一个小时(以为只有40mins),没推出来,心里就有些慌了,day1t1不该是这样啊?由于打的表也很丑,当时也把规律想复杂了,一直以为要ex_gcd,最后规律也没看出来,于是30pts。
T2 是一道模拟题,开始读题的时候吓了一跳,感觉卡题面,但仔细读过并在心里模拟之后,这道题就很明了了,细节有点多,还好后来静态查错看到里面数字只取了第一位,样例也太水了,不过最终还是A了。
T3 是一道图论、DP题(也可以记忆化搜索),我当时写的拓扑DP。一上来就打了个Tarjan判环,最后根本没用删掉了,中间也各种打补丁,最后还是犯了两个错误:一是把要用的数组清空了;二是拓扑如对时没有把所有入度为0的都加进来。当然爆0了(爆70)。
今天的总结就是要看好时间,保持冷静,思考问题要由简入难、层层递进,打代码之前先考虑清楚,做好每一步的规划,想清楚先拿那些分,有条不紊。

Day2:
今天当然没有搞错时间~
T1 是一道水题,本来看题时还有点虚的,以为又像昨天一样shit,不过看完题就松了一口气,不过为了保险还是多考虑了一下,今天要稳。后来考完发现double可能会被卡精度,然而并没有。AC。
T2 是一道状压题,看数据范围就知道,可是并没想到,因为我根本没想到传深度,按深度DP,更没想到预处理。最重要的是,我当时也没想到什么好的办法来爆搜生成树,哎,搜索不行啊,于是当然也就没想到记忆化搜索。不过,我还知道一个稳妥的生成生成树的办法——prufer序,这个东西就是枚举排列,复杂度也很稳,可是以前只用过一次,还是去年了,没办法,只好硬着头皮打了(不过也蛮有把握的),最后当然打出来了,只不过大样例要跑8s,卡了几下卡到4s,不应该啊?就在我快跳过的时候,忽然发现主函数中调用了n次Dfs,呵呵,也就是我强行跑了n次,巧妙地把复杂度加了一级,去掉之后就只要~0.3s了,稳稳的。70pts。
T3 是一道部分分很多的题,做法当然也很多,不过也让我白白打了一遍树状数组又删掉,哎~当然先拿了30pts。然后考虑后面的部分分,对于正解没有主意。然后打了q<=500的20pts,有50了。最后灵光一闪,想到了又一个20pts做法,用线段树,不过看看时间,还有17mins,打不打呢?我对自己线段树还是很自信的,当然就打了,打之前当然把老代码保存了,也不敢太浪。最后5mins,打完了,编译错误!!!我的线段树居然编译错误了!!!改哪里都没用,当时以为要GG了,不过最后1min时发现少打了个’}’,呼~终于调出来了,由于没时间测数据了,我也就赶忙把文件名改了稍微检查了一下就交卷了,嗯,我的线段树就只是编译过了,并没有测数据。后来发现中间20pts没开long long,又要丢20?还不知道线段树对不对。最后就中间爆了15pts,线段树果然很稳。55pts。
今天的总结就是要稳,要很稳,也要很细致,看好数据范围。

  这次联赛当然爆的很惨,也和我有些基础代码没打熟练有关,模板打熟练是十分重要的,像day1t3图论打得乱,又如day2t3线段树不调过。心态方面也要加强,考试时不必为了任何理由慌张,慌张只会有负面影响。同时,我的水平还需要加强,这次联赛并没有考我不知道的算法,只考了我不会的用法,以后学一个算法也要时刻复习,没事做做题,了解各种变化,当然也能让自己的实力更进一步,提高实力当然也不是只有学习新东西。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值