NOIP2018总结

现在看来,真的是挂的很惨。唉,还是自己水平不行吧,不管是D1T3和D2T1的不会写或是不敢写,还是D2T2脑残特判打错。连最基础的骗分也一个都没写。

 

Day1:

T1:看了一下,感觉是个贪心,每次肯定先填最小的,再向两边查找。写了个O(n^2)的暴力,发现大样例挂了,比答案少了一百多,但没看出来什么错误。回头翻了翻样例,发现里面有个0,而我没有考虑这种情况。改了一下就过了。这个算法如果每次最小值都在中间的话,复杂度是O(nlogn)的,但如果数列是有序的,就被卡成O(n^2)的了。于是开始写线段树优化,写了半天还写错了,调也调不出来,下传标记那边好像有点问题。我此时有点慌,发现Day1T1现在只有暴力分,而时间已经过去了接近一个小时,就先去看了T2。后来回来发现不用支持修改,只要记录一下就好了,就写了个ST表。居然又写错了,调了一会发现我把1<<(j-1)写成了1<<j,导致1以上都是0,改了一下终于过了大样例。自己基础还是太差,写线段树和ST表都能写错,浪费了很多调试时间。

T2:看题目就是个完全背包。不知道为什么,我总感觉今年会有背包。但这题有点奇怪,因为它要完全一样,如果直接这样完全背包不知道对不对,写了一下发现过了大样例,当时希望它是对的,而且我也不会其它的什么算法了。算了一下复杂度,大约是五千万左右,应该不会超时,就没再管它。

T3:明显的二分答案,因为要求最小值最大。然后发现就不太会了。一开始还以为和运输计划差不多,后来发现不是的,这个路径不能相交。于是先写暴力,20分的m=1显然就是树的直径。看到有几个点是所有ai=1,这就是个菊花图。当时考场上一激动就想错了,以为这种情况就直接sort就好了,还觉得35分非常稳,出考场和smz大佬交流发现想错了,唉,又丢了15分。链的数据感觉不太会写,为什么我每次感觉链的数据都没什么用,思维还是不行。最后大概还有不到一个小时,开始想有没有什么O(n^2logn)的算法,想了半天都不太会,最后20分钟想了一个假贪心,但又要求LCA又要树上差分,没时间写了。这题除了直径,连个骗分的假算法都没有就交了上去。

出了考场发现一堆人在说题目水,好像很多AK的,有点慌,后来又发现自己T3菊花图写错了。T1竟然是积木大赛原题,我明明做过但在考场里一点印象都没有。以后做过的题目最好回味一下,留点印象,以后做到类似的题目就会好一点,最好在每一道题里都学习到一点技巧。Day1还是不行啊,特别是T3很多暴力都不会。考场上的时间真的过的很快,所以思维一定要灵活起来,打代码的速度也要加快,最好还不能有细节错误。想着明天一定要好好考。

Day2:

T1:本来以为有数学题的,一打开,又是个图论题。看下面数据范围,只有两种,一种m=n-1,一种m=n。此时我已经知道了,一种是树,另一种是基环树。立刻写掉了树的情况,有了60分。开始想基环树的情况,想了半天感觉情况太复杂了,不太好写,其实主要还是没想到删边,想到删边就好写了。我有点慌,结果连下边的的部分分也没拿就去看下一题了。下面有两个非常好拿的部分分,搜索的数据和只有一个环的数据。特别是一个环的数据,直接判断就行了,这是比较遗憾的一个地方。

T2:题目比较复杂。看懂了之后感觉是状压DP,但我不太会写,就开始搜索打表找规律。但我又不太会带优化的搜索,只能枚举每一个格子添0还是1,这样复杂度就太高了。好不容易打出了3的规律,以为有了65分,就没再管它。但后来发现n<=3并且m<=3的数据被我特判错了,唉,又丢的15分。最后怎么就没认真检查一下。

T3:树形DP。只会写O(nm)的算法,拿了44分。下面的显然不能每次都重新算DP,只能在原来基础上修改,后来才知道是动态DP。其实下面有个部分分相对好拿,就是深度小于等于100的,直接暴力修改它的父亲就行了,但还是比较难写。主要是看到D2T3就不太敢想了。以后拿到任何题目都要认真思考,寻找突破口,不能畏难。

出考场发现好多人T1都会做基环树的情况,我怎么又不会,还是感觉基环树的题目没做过,又是不敢做。

 

出成绩了,只有374分,没打错特判就389分,就算基环树会写也就429分,好像都不是太高。D1T3的分数实在太低了。那几天心里非常难受,如果没有国一就要退役了。最后勉强国一,冬令营是肯定不够的了。

 

终于写完了NOIP2018总结。水平一定要进一步提升,学习一个算法一定要学透彻,理解清楚,不能背模板,更重要的是用它解决相关问题,灵活运用,还要会把问题转化为基础性问题,多思考题目性质。思维永远是最重要的,乱搞也一定要会。希望能激励自己。

posted @ 2018-11-14 14:52  fluttersunny  阅读(134)  评论(0编辑  收藏  举报