[置顶] ACM心路历程

一入ACM深似海,一道算法题一个上午,一个整天,一个星期,一个月,甚至一个季度,一年,做不出来那道题是很正常的现象。然而一直没有放弃,然而也没有什么成绩,感觉自己仍然停留在ACM刚入门的阶段,说实话,感觉ACM入门真是难,搜索,dp,数据结构,数论,图论,计算几何,博弈论,还有一大堆一大堆的杂题,组成了ACM-ICPC。其中的一个分支的一个点,要想把他吃透,理解都需要花费很多时间。自己是大一上学期寒假参加ACM集训的,自己那时候真的是个菜,什么都不会,学长讲了高精度,自己听了半天都听不懂。后来的dfs,bfs更不要提了,自己什么都不会,也听不懂,对着刘汝佳的入门经典看了好久求连通块的题目,没看懂,也没理解,我记得前4章的题我当时大部分都看不懂。后面的翻都没翻,一点也没看,感觉自己也看不懂,每天也做不出几道题,这让我很苦恼,甚至感觉自己是不是一直坚持下来的东西是个错的。但是不能着急,慢慢地你就会懂了很多。因为自己对递归的理解一直是个难题,当时汉诺塔问题根本听不懂,感觉真的好别扭,这是怎么解出来的,就是感觉好神奇。知道某天突然间就懂了一些东西,理解了递归,所以许多东西都迎刃而解了。给大家举个例子,理解了递归,你就懂了dfs,懂了拓扑排序判断有没有环,理解了树形dp,理解了数的深度优先遍历,前序,后序,中序,线段树,分治,快速幂。其实没什么特别的,都是一个模样。慢慢地自己就开窍了。暑期的时候,学长对我们采取了全放养的模式,什么也不教,也不指条路让我们走,导致一个暑假虽然一直在机房呆着,但是好像真的什么新知识都没有学到,那时候看了dp,当时的感觉就是好复杂,只会最长递增子序列,2个序列的公共最长子序列都看不懂。因为不懂还硬着头皮看,所以每次做完训练感觉头会很疼,自己感觉真的很累。我感觉听不明白的东西,做不会的事情会让自己的大脑感觉很累很累,尤其是算法题。后来自己大二上学期学习了数据结构才感觉好多了。因此如果有一些还没有入门正准备入门的同学,我希望他们先把数据结构给自学了,那样再来搞ACM会轻松很多,另外STL库同样需要大家学习,可以化繁为简,解决很多问题,刘汝佳的书上有STL库的介绍,另外晚上也可以搜到,比如set,map,queue,deque,stack,priority_queue。依稀记得当时不会用stack,学长就说你可以用数组进行模拟呀!!我说怎么模拟呀!!,他就说选定2个数,相当于指针,为bottom,top,出栈怎样,进栈怎样,当时自己一脸懵逼。大二上的寒假我就感觉收获很多了,每2天一个专题,学习了KMP,字典树,AC自动机,图论的一些基础算法,bfs,dfs,自己也很努力地刷了一些题,感觉自己进步很快,心里感觉也挺开心的。那种进步的感觉让自己感觉很充实,那种感觉也很值得回忆。然后自己在QQ上搜索ACM群,加了一些,你就会发现有些群里面有很多资料,自己下载一些,慢慢学,一点一滴就积累起来了。其实环境很重要的,有学长带的话进步会很快。像我这种相当于白手起家的人来说真的好难呀!!给大家提的建议就是不要盲目,做些专题进步的会很快,通过做题来理解知识点会让你更加深刻。上星期的bestcoder发现4道题基本都是数论,因此我想把自己的方向定在数论。我知道数论很难,题也很杂,但是难我不怕,我也不怕别人虐我,只要我在努力。在hdu上面刷了130多代替了,排名6000多,虽然依然很菜,但是我的目标就是把学校的ACM队带入现场赛,并且拿个奖牌回来,我知道很难,也会有很多人在嘲笑我,但是都没关系。希望自己写的这篇博客能让自己时刻牢记自己的目标,今年不行,我就在搞一年,带一下学弟学妹,让他们少走一点弯路也是很不错的。加油!!!

你可能感兴趣的:([置顶] ACM心路历程)