写给想参加ACM的大一,大二的同学
写给想参加ACM的大一,大二的同学
或许有很多同学没有听过ACM竞赛,或许还有一些同学听过ACM,但是却觉得这个比赛离自己很遥远,不知道怎么参加这个比赛,
或许还有一些同学想参加这个比赛,却不知道如何提高自己,进入校队.
对此,我列出了下面几个问题及回答,希望能让更多的同学找到方向.
一.什么是ACM竞赛?
ACM/ICPC(国际大学生程序设计竞赛)是由国际计算机界历史悠久、颇具权威性的组织ACM(美国计算机协会)主办和IBM赞助的,世界上公认的规模最大、水平最高的国际大学生程序设计竞赛。
大赛每年主办一次,在各大洲设立若干赛点,各赛点的NO.1队进入国际决赛(如果No.1已经在其他赛点出线,则No.2队出线,依此类推)。
ACM现在的发展非常快,参赛的学校已经达到了2000所左右,参赛队伍达到5000队以上.
由于Sun公司积极赞助这个比赛,他们已经开始和教育部协商,顺利的话,不久ACM将成为教育部承认和支持的一个比赛.
中国现有四个赛点.
2007年的赛点为:北京,吉林,成都,南京.
二.为什么要参加ACM?
1.因为实际学习的需要.
Google中国区总裁李开复在他的<给中国大学生的三封信>中提到,一个合适的计算机系本科生,应该在毕业的时候有至少3万行的代码量.一个优秀的本科生,在毕业的时候应该有至少5万行的代码量.
而实际在大学教学是不可能满足这样的要求的.我本人经历了北师大的计算机系课程,我发现师大的计算机系的本科课程中需要编程的课程为:C语言,面向对象程序设计,数据结构,编译原理,汇编语言,操作系统,中文信息处理(选修课).这些课程每门课的所有编程作业加起来代码不过1000行/门,所以如果你只是完成老师布置的作业的话,在毕业的时候你的代码量将不足1万行.而这,将直接造成你的编程能力严重不足!(需要数据的同学可以来找我,我将当面提供我以上本科课程的作业代码给你看看,让你亲眼看看是不是只有那么点!)
2.因为ACM比赛很有趣.
每一道ACM比赛题目都有一个很有趣的故事背景,很多故事背景是与实际生活相关,所以做起来很有成就感,也很有趣.
3.可以认识很多志同道合的朋友.
ACM校队以及比赛实际上提供了一个平台,使广大热爱编程和算法的同学可以相互交流和学习.我在参加ACM的训练后,不但认识了校内的很多的编程高手,而且还通过网上的比赛平台,和很多学校的ACM队员都成为了朋友。这些朋友,由于大多数都有较强的能力,所以在他们毕业进入象Google, Baidu, Sina, Yahoo之后,你常常就可以通过中国特色的人脉关系,从他们那里获得很多大公司的实习资格的推荐。(这相当于通过了淘汰率最高的网申阶段)
现在的ACM校队成员已经有不少在毕业后进入了Baidu, Sina, Yahoo, 摩根斯坦利,华为,摩托罗拉,其他的则选择了继续读研。还没有见到哪个发展不好的,呵呵。
4.保研可以加分
经过一到两年的训练,大多数ACM选手将具有获得铜奖的能力,而获铜奖的同学可以在保研中获得3分的加分。在07年,保研算分规则是四年的所有成绩求积点平均,再乘以80%,所以加3分相当于大学阶段的所有课程成绩加了 3/0.8=3.75分。如果你去向大四已经保完研的师兄师姐了解一下的话,就知道这是相当可观的。
5.考研复试会考查相关题目
现在了解到包括北师大,北京航空航天大学,中科院在研究生复试中都会出有关ACM竞赛的题目,以考查学生的算法功底。
6.参加IT界各大公司的比赛以及所有涉及算法的比赛
现在Baidu, Google每年都会举办程序设计比赛,而今年的Baidu之星程序设计比赛的出题总负责人就是清华大学的原ACM比赛教练。有ACM功底的同学很容易在此类比赛中获奖,并且可以因此获得直接面试的机会以及丰厚的奖品。
TopCoder公司(www.topcoder.com)每周都会举行一些个人赛,第一名将获得至少500美元的奖金。
7.参加全国大学生数学建模比赛
数学建模竞赛同样需要算法和编程,参加过ACM比赛的同学会发现解决数学建模问题将变得很容易。我就是这样没有针对数学建模竞赛做过一天的准备,靠ACM竞赛训练出来的编程水平获得了数学建模的北京市一等奖。ACM校队另一位成员杜晓宇也是同样地在北师大的05年的数学建模竞赛上获特等奖,并代表北师大去新加坡参加数学建模比赛!
8.提高英语阅读能力
因为是全球性的比赛,所以ACM的比赛题目是全英文,这对于大多数进入大学后就把英语放一边的同学来说,是一个绝好的训练阅读能力的机会。
三.如何才能进入北师大校队?
北师大每年四月会举行全校范围内的程序设计竞赛,在竞赛中获得较好成绩的同学将被选拔进入ACM竞赛的校队参与训练。
如果有同学认为自己已经有进入校队的实力,可以直接联系我,经过考查,可以直接进入校队训练。
四.如果才能提高自己,以便在校内的程序设计中获得较好成绩?
首先你必须学习好C语言和数据结构,这是编程的基础。由于信息学院的课程安排,数据结构在大一下学期才上。建议有能力的同学在大一上学期就开始自学数据结构,这样你就可以在大一下学期开始做ACM题目。
北师大有自己的ACM训练系统,网址为:http://acm.bnu.edu.cn ,上面的题目从1001号开始有专门为ACM新手准备的题目。相信大部分具有C语言基础的同学可以通过这几道题来熟悉ACM比赛的各种特点。在完成了这几道题后,1005题目的最后给出了继续练习的题目。
在完成了所有这些上边提到的练习题后,你可以试试完成这个训练系统上的其它题目,需要注意的是题目并不是按难度排序的,所以如果有一道题不会做那么跳过先不做它即可。
按照以往的经验,在此训练系统上完成30道以上题目的同学一般都会在4月份的校内程序设计竞赛中取得较好成绩。
希望大家能够重视这个过程,即使最后没能进入校队,但是这样参与也已经使你的编程能力得到很大的提高了,你本身已经收获了很多。
五.更多的学习资源
北大的ACM训练系统:http://acm.pku.edu.cn ,现在为国内使用的人数最多的训练系统。
北师大ACM蛋蛋网讨论区: http://www.oiegg.com/forumdisplay.php?fid=407&frameon=no, 可以从"师大社区"->"社团群体"->"ACM程序设计"中进入。ACM校队成员常常在这里讨论,你可以在这里提出你的问题.
相关推荐
本课件对于初学计算机语言而且想参加acm比赛的人来说可以说是一个宝贵的资源,希望大家可以利用它给自己一个很高的提升!!
该文档记录了几所名校OJ平台网址。大一大二要参加ACM竞赛的同学下载来看看,名校开放的OJ平台。
几个ACM题的答案,对参加ACM竞赛非常有用,这几个题很经典的,一般参加ACM的都会拿这几个题练手的!
ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛ACM大赛
Dota中英雄技能攻击会有一个范围,现在释放一个技能给出他的攻击范围和目标英雄的位置,问是否能攻击到。攻击范围保证是一个凸多边型 Input 有多组测试数据 第一行输入三个整数n,a,b, 期中n代表攻击范围是给出的n个...
对参加ACM竞赛非常有用的几个ACM关于图论的答题模板,超有用的,把打出来带到考场肯定非常有用!
这是一份 北京大学的 acm 的解题报告 希望对想参加acm 竞赛的同学带来帮助!
北大ACM大赛中的程序设计,很适合参加ACM大赛的同学
对参加ACM竞赛非常有用的几个ACM答题模板(数论,数值计算,NP等等)
ACM国际大学生程序设计竞赛(ACM International Collegiate ...本文旨在分享我个人参加ACM竞赛的经验,包括准备过程、比赛策略、心态调整以及赛后总结等方面,希望能为准备参加ACM竞赛的同学们提供一些参考和帮助。
ACM ACM ACM ACM ACM讲义.ppt
ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板AACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM 模板ACM ...
想参加ACM的同志们一定要下来看看了!不下会后悔
参加ACM的同学可以打印带着进行比赛,不参加的可以下下来进行研究
系统地向初学ACM的同学讲解ACM的注意事项
ACM PRO ACM PROACM PRO ACM PROACM PRO ACM PRO
参加acm大赛的同学很好的资源。连包含各种算法思想。
ACM竞赛之新人向导 对想参加ACM或想了解ACM的人会有帮助
包含近几年多道ACM面试题目,希望有所帮助