圆溜溜,尤其首先,集训的收获很大,远远比自学要来的快
其次,新知识点到时没怎么讲(A*,数论除外,倒是真的学会不少以前碰都不敢碰的定理呀,结论之类的东西),但是还是深深地感受到了集训的困难,七天的节奏就是:讲这是什么(10min),讲基本算法(10min),之后就是漫长神仙题目时间,平均难度紫色,以至于听得云里雾里。。。看来回家之后还要好好复习一下以前学过的板子。还有就是两次的模拟赛,讲解完之后感觉算法也不是多么高深,但是思维量很大,第一次模拟赛基本是在想了三个小时的板子,而经过五天的洗礼和摧残,我感觉思维方式在五天之间有了明显的提升,以至于第二次模拟赛思考的方式有了质的提升(至少我这么认为)。。。
这次集训最大的收获就是对于思维模式的改编吧。以前我太依赖算法,模板,但是对于一些模板的记忆却不够深刻,考场上不一定能打得出来,所以导致很大一部分灵活运用只能够打打签到分,一直在向板子上套,如果题目不是专考这个算法,而是要转化用它维护某个东西,那我就绝对gg了。所以,我觉得以前所说“50min思考,10min敲代码”之类的话非常正确,不应该打到哪想到哪,直接套板子,应该先理清一题的思路,再代码实现,思维比代码更重要。
其次,就是码力。对于一些思路,我可能根本实现不了,或者需要调很久,比如数据结构之类的,导致比赛浪费了很多时间,一些暴力dfs的题目也很难调出,所以,在比赛之前我还是应该写一写数据结构和暴搜题,提升一下码力,以打出后面不会的算法题的暴力分数,按照cyr大佬的说法,只要会暴力,就能水到省一,所以还是需要加把力多锻炼码力。
在讲搜索的时候,老师的一句话让我记忆深刻:“在写搜索的时候你一定要知道自己在干什么”我觉得不止是搜索吧,大量的题目都需要知道自己在写什么,这一部分要干什么,所以可以在码代码的时候顺手加上注释,这样既保证了思维的清晰,又能减小查错的压力。
在几天的晚自习上,我体会到来自查错的压力,我的天查错简直比写代码还难受,愣是不知道哪里出了错,肉眼hash代码,导致头昏眼花还调不出来。我发现zwjdd的阶段输出能力很强,我却只会肉眼hash(主要是因为我不敢用cout,而printf却太麻烦了),阶段输出是一个很好的查错方法,我应该多使用。
感觉noip的数据结构没有这么高深,据老师说,线段树和树状数组就可以应付了(树状数组就是神仙!!!@HH的小纸条),各种神奇的东西都能维护。
还有,就是动态规划,感觉老师的方程式十分的玄学,高深,随便一个状态都可以成为转移的对象,再回头看,方程式好像没有这么高深,直接想状态,暴力找转移就行了,重点还是在于多刷点题,多归纳,多思考。
今后的重心可能会放在复习板子,做模拟题,刷dp,搞数据结构上。