在实验室正式集训前,为了我们更好的跟上进度,我们在寒假前也进行了一些集训.集训的内容主要说了(也是重点)并查集的一些简单思想与写法,和并查集有联系的最小生成树和最短路的算法.最小生成树的算法主要学习了prime和kruskal算法算法.最短路算法中为Dijkstra算法和Floyd算法,和一些很基础的数论(GCD和LCM,快速幂等).
然而这些都只是工具,如何利用好才是个人的本事,而且这些所衍生出的题各种各样,真正用好了这些工具才能解决这些难题.
在6天的集训中,印象最深的就是在1月16号开的那场比赛中的H题和I题,这两道题就是最小生成树的水题,用prime和kruskal算法都可以做出来,但我们中有许多人就是没做出来,要么是H题,要么是I题,但这两道题又是这么的相似,这让我们百思不的其解,最后我们在讲题时大家一起找BUG,再找BUG中又让我们懂了许多知识点,我觉得找BUG也是一种能力,当时没人看出来问题,直到第二天我找到了问题,但是我们讨论了,也没讨论出个所以然(一些格式和结构体的事),但是做题本身并不是很重要,在做题中发现问题,找到问题,解决问题的能力才是我认为做题的意义所在.
我是很感谢参加了这次集训,不仅认识了许多朋友,也了解了许多知识点.最重要的是理解知识点,在那些算法中找到规律,正如某佬说过你能在prime的基础上把它改成Dijkstra算法,那你才是对prime有了比较好的认识.要在看到一道题是快速想到用那种算法解决时,又能熟练打出代码,这才是我想达到的目标.一定要打出属“自己”的算法模板.好处是很大的.
以上就是我的总结.
网友评论