【转】acm入门必看的学长经验
以下仅仅是本人个人的一点点想法,仅供参考,希望对于还没有方向处于盲目阶段的acmer新手会有所帮助。
1,买一本《算法导论》,先自己大概浏览一遍。
收藏acm网址导航 http://www.acmwiki.com/收录了国内外各大OJ。
2. 注册几个OJ
acm.pku.edu.cn
http://www.acmwiki.com/
试着在上面做题,找AC人数最多的做,或者找自己会做的做,不会的一概不管。
遇到不会做的题目,尽量自己想,想不出可以看discuss, 也可以搜索,可以到acm百科网( http://www.acmwiki.com/index.php?category-view-14.htm)查看解决报告。
3.
做到一定数量题目后(我的建议是100左右,当然这个数字自己定,主要是怕做下面的分类有困难,如果你觉得做下面分类没什么问题了,你可以不用做到100,直接做下面的分类)
做下面这个分类:
北大poj题目分类(初级): http://www.acmwiki.com/index.php?doc-view-8.htm
北大poj题目分类(中级): http://www.acmwiki.com/index.php?doc-view-9.htm
北大poj题目分类(高级): http://www.acmwiki.com/index.php?doc-view-10.htm
(这个分类又叫Poj水题,很多地方都有,poj分类很多,个人认为此分类最好,有层次感,内容全面)
做到哪一块不懂可以再看《算法导论》的相应章节,按顺序做,尽量做
如果这一块(如树状数组)觉得不熟练, 可以去搜索再多做这类型的题(如 关键字:poj 树状数组)
4
如果想在校赛(时间为每年5月中旬)取得好成绩,最好要达到该分类中中级的水平
5
多做题,一定要多做题,每天至少(是至少)过个几题(1题也行,但一定要做,天天做,有空就做)
6
有空到acm百科网( www.acmwiki.com)看看别人的代码,不管这题你是过了还是没过,最好都仔细读读,吸取其中写的好的地方,尤其是新手,多看看别人的代码很有好处
7
有问题不懂可以在acm群,acm百科网问问题,因为都是自学,交流很重要,在(且只有在)想不出来看不懂书网上又搜不到自己实在无法解决时,一定要多问,死缠烂打地问
8
有一定水平后,各个OJ,topcoder,所有的比赛都要关注,能做的比赛尽量做,不管刚开始你有多菜,一题都做不出来也要去参加。并在赛后总结,尽量把能做的题目干掉。
9
所有的大牛都是从只会简单题开始的,不管你现在多菜,只要你坚持,总有一天你会变成大牛。
10
我原来以为只有ACM会辛苦,后来和别人交流了,其实所有的专业比赛(计算机方面)都很辛苦,不仅辛苦,而且都需要很长时间,没有任何比赛是你说随便搞搞短时间就能出成绩的,拼的都是内功,成功没有捷径。
如果你选择ACM,就一定要坚持,而且你必须放弃很多其他东西,不要什么都做什么都没成绩,有所得必有所失,路是自己选的,自己的未来自己负责。
1,买一本《算法导论》,先自己大概浏览一遍。
收藏acm网址导航 http://www.acmwiki.com/收录了国内外各大OJ。
2. 注册几个OJ
acm.pku.edu.cn
http://www.acmwiki.com/
试着在上面做题,找AC人数最多的做,或者找自己会做的做,不会的一概不管。
遇到不会做的题目,尽量自己想,想不出可以看discuss, 也可以搜索,可以到acm百科网( http://www.acmwiki.com/index.php?category-view-14.htm)查看解决报告。
3.
做到一定数量题目后(我的建议是100左右,当然这个数字自己定,主要是怕做下面的分类有困难,如果你觉得做下面分类没什么问题了,你可以不用做到100,直接做下面的分类)
做下面这个分类:
北大poj题目分类(初级): http://www.acmwiki.com/index.php?doc-view-8.htm
北大poj题目分类(中级): http://www.acmwiki.com/index.php?doc-view-9.htm
北大poj题目分类(高级): http://www.acmwiki.com/index.php?doc-view-10.htm
(这个分类又叫Poj水题,很多地方都有,poj分类很多,个人认为此分类最好,有层次感,内容全面)
做到哪一块不懂可以再看《算法导论》的相应章节,按顺序做,尽量做
如果这一块(如树状数组)觉得不熟练, 可以去搜索再多做这类型的题(如 关键字:poj 树状数组)
4
如果想在校赛(时间为每年5月中旬)取得好成绩,最好要达到该分类中中级的水平
5
多做题,一定要多做题,每天至少(是至少)过个几题(1题也行,但一定要做,天天做,有空就做)
6
有空到acm百科网( www.acmwiki.com)看看别人的代码,不管这题你是过了还是没过,最好都仔细读读,吸取其中写的好的地方,尤其是新手,多看看别人的代码很有好处
7
有问题不懂可以在acm群,acm百科网问问题,因为都是自学,交流很重要,在(且只有在)想不出来看不懂书网上又搜不到自己实在无法解决时,一定要多问,死缠烂打地问
8
有一定水平后,各个OJ,topcoder,所有的比赛都要关注,能做的比赛尽量做,不管刚开始你有多菜,一题都做不出来也要去参加。并在赛后总结,尽量把能做的题目干掉。
9
所有的大牛都是从只会简单题开始的,不管你现在多菜,只要你坚持,总有一天你会变成大牛。
10
我原来以为只有ACM会辛苦,后来和别人交流了,其实所有的专业比赛(计算机方面)都很辛苦,不仅辛苦,而且都需要很长时间,没有任何比赛是你说随便搞搞短时间就能出成绩的,拼的都是内功,成功没有捷径。
如果你选择ACM,就一定要坚持,而且你必须放弃很多其他东西,不要什么都做什么都没成绩,有所得必有所失,路是自己选的,自己的未来自己负责。