ACM竞赛被誉为计算机界的奥林匹克,每年的获奖者都几乎被Google、微软、IBM、百度等大公司哄抢一空,很多大公司赞助ACM赛事的目的就是为了“近水楼台”,能够比竞争对手笼络更多人才。ACM可以看作是“聪明者的游戏”,在ACM题目研究深入的人通常有非常高的数学、计算机素养和非常强的分析、动手能力,能够处理各种高精尖的难题,这也是各大公司哄抢ACM人才的主要原因。(摘自百度文库)
ACM竞赛在国内分为国赛CCPC(China Collegiate Programming Contest:中国大学生程序设计竞赛)和全球赛ICPC(International Collegiate Programming Contest),ICPC每年有在国内有4-5个分站,CCPC每年有3-4个分站。由于国内参与高校众多,不论CCPC还是ICPC的各分站现场赛,都必须通过激烈的网络预选赛选拨通过才能获得现场赛资格。比赛时间为每年9-12月份。
3人组队,1台电脑,5个小时,C、C++或Java(编程语言任选其一),解决10-13道问题,现场直接判题出结果。提交代码正确,升起一只代表该题颜色的气球。
正确答题数目多&&时间最少
一般分别按10%,20%,30%的比例颁发金,银,铜奖,即一般情况(120队伍)有12支队伍获金牌,24支队伍获银牌,36支队伍获铜牌,其余正确解出至少一道题的队伍为优胜奖。
在校学生(年龄23周岁内或者大学入学5年内),每队由一名教练(教师)和三名队员组成。
编程基础(C语言或C++或Java等)
数据结构:线性表、集合、链表、排序、树……
数学基础:概率论、线性代数、群、博弈论、数论
图论:图的遍历、连通、哈密顿路与欧拉回路……
几何:向量,交叉、多边形、线段求交、最近点对、最远点对……
经典算法:广度优先搜索、深度优先搜索、动态规划……
培训每年都有,按照培训内容从入门到精通可分为三个阶段,秋季学期的ACM基础编程训练、春季学期的ACM算法入门训练、暑期ACM知识体系训练
秋季学期:进行ACM基础编程练习(C或者C++,编程语言学生自选),熟悉OJ,巩固编程基础。训练方式为在在线评测系统OJ上开比赛做题。同时,老师会组织参加外校新生个人赛,通过多参与比赛锻炼提高自己。
春季学期:开展数据结构、STL和简单算法编程的讲解和训练。同时组织参与外校的组队校赛,尝试各种组队并积累比赛经验。每年5月份将举办我校的ACM校赛。
暑假集训:暑假期间将针对整个ACM的知识体系进行集中培训,培训方式为每日知识点讲解+打比赛+赛后题解及补题,同时组织参加由100多所高校联合举办的暑期ACM多校联合训练比赛。
2015年下半年启动ACM培训,2016年开始参加CCPC和ICPC比赛。通过1500+队的网络预选赛激烈PK,获得了CCPC长春赛站、ICPC大连赛站、ICPC青岛赛站、ICPC北京赛站的现场赛资格,并且凭借在ICPC大连赛站和青岛赛站的优秀表现,得到了ICPC亚洲区域赛决赛资格。
比赛成绩:CCPC长春赛站铜牌、ICPC大连赛站铜牌、ICPC青岛赛站铜牌、ICPC亚洲区域赛决赛铜牌