国际大学生程序设计大赛(ACMICPC)简介及竞赛样题
ACM国际大学生程序设计竞赛简介

1.ACM国际大学生程序设计竞赛简介1)背景与历史1970年在美国TexasA&M大学举办了首次区域竞赛,从而拉开了国际大学生程序设计竞赛的序幕。
1977年,该项竞赛被分为两个级别:区域赛和总决赛,这便是现代ACM竞赛的开始。
在亚洲、美国、欧洲、太平洋地区均设有区域赛点。
1995至1996年,来自世界各地的一千多支s代表队参加了ACM区域竞赛。
ACM大学生程序设计竞赛由美国计算机协会(ACM)举办,旨在向全世界的大学生提供一个展示和锻炼其解决问题和运用计算机能力的机会,现已成为全世界范围内历史最悠久、规模最大的大学生程序设计竞赛。
2)竞赛组织竞赛在由各高等院校派出的3人一组的队伍间进行,分两个级别。
参赛队应首先参加每年9月至11月在世界各地举行的“区域竞赛(Regional Contest)”。
各区域竞赛得分最高的队伍自动进入第二年3月在美国举行的“总决赛(Final Contest)”,其它的高分队伍也有可能被邀请参加决赛。
每个学校有一名教师主管队伍,称为“领队”(faculty advisor),他负责选手的资格认定并指定或自己担任该队的教练(coach)。
每支队伍最多由三名选手(contestant)组成,每个选手必须是正在主管学校攻读学位的学生。
每支队伍最多允许有一名选手具有学士学位,已经参加两次决赛的选手不得再参加区域竞赛。
3)竞赛形式与评分办法竞赛进行5个小时,一般有6~8道试题,由同队的三名选手使用同一台计算机协作完成。
当解决了一道试题之后,将其提交给评委,由评委判断其是否正确。
若提交的程序运行不正确,则该程序将被退回给参赛队,参赛队可以进行修改后再一次提交该问题。
程序运行不正确是指出现以下4种情况之一:(1)运行出错(run-time error);(2)运行超时〔time-limit exceeded〕;(3)运行结果错误(wrong answer);(4)运行结果输出格式错误(presentation error)。
ACM-ICPC简介和参赛规则

ACM/ICPC(ACM International Collegiate Programming Contest, 国际大学生程序设计竞赛)是由国际计算机界历史悠久、颇具权威性的组织ACM(Association for Computing Machinery,国际计算机协会)主办的,世界上公认的规模最大、水平最高的国际大学生程序设计竞赛。
1.ACM-ICPC的历史及其影响ACM/ICPC从1970年开始,已经举办了30多届,其目的旨在使大学生运用计算机来充分展示自己分析问题和解决问题的能力。
该竞赛一直受到国际各知名大学的重视,并受到全世界各著名计算机公司的高度关注。
可以说,ACM国际大学生程序设计竞赛已成为世界各国大学生最具影响力的国际级计算机类的赛事。
2.ACM-ICPC的比赛形式和内容ACM/ICPC采用组队参赛的形式,由三名队员组成一支队伍参赛。
比赛时三名队员只使用一台电脑,整个比赛时间为5个小时。
比赛题目为6~10道不等,全英文。
标准的程序数据输入和输出解答要求。
选手们必须根据题目内容设计算法,并完成相应的功能要求。
该队程序如果能在规定时间内得出正确的答案视为通过。
队伍通过的题目数量多的在比赛中排名越高,题目数相同的则用时越少的排名越高。
3.竞赛内容竞赛涵盖的范围很广,大致划分如下:Direct(简单题),Computational Geometry(计算几何),Number Theory(数论),Combinatorics (组合数学),Search Techniques(搜索技术),Dynamic Programming(动态规划),Graph Theory(图论),Other(其他)可使用的计算机语言:C语言、C++,JAVA竞赛规则参赛队组成1. 教练是参加队伍所代表学校认定的正式教师,教练必须保证所有队员符合本规则的规定。
教练作为参赛队伍代表,负责竞赛活动中的联系工作。
2. 只有当赛区组委会从教练处获得所有保证队伍合格的资料后,一支队伍才能获得参赛的资格。
吉林大学ACM国际大学生程序设计竞赛简介

吉林大学ACM国际大学生程序设计竞赛简介竞赛宗旨ACM国际大学生程序设计竞赛是由位于美国的计算机协会组织的年度性竞赛,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事,它已成为国内外各高校展示实力、加强交流、相互促进、共同发展的广阔舞台。
ACM/ICPC作为具有国际权威性和影响力的国际大学生程序设计竞赛,已成为衡量大学生程序设计能力和学校计算机学科水平的重要标准之一。
我校于2002、2003、2004、2005年参加亚洲预赛,分别在这八个赛区中取得学校排名第16、第17、第12、第9,第7、第18,第21,第17,共获得银奖2块、铜奖6块,竞赛成绩在不断稳步提高。
竞赛支持网站:(校外)(校内)竞赛联系地点:前卫南校区萃文楼501竞赛交流平台:吉林大学BBS 牡丹园-电脑技术-算法版/cgi-bin/bbsdoc?board=Algorithm参赛对象1、凡吉林大学在校本专科生均可报名参加。
年级、专业不限。
鼓励低年级同学参加。
2、比赛学生以个人身份参加,每人独立参赛。
3、参赛同学应在竞赛网站上注册参加热身赛,在报名时提供个人资料。
4、参赛同学应保证自己身份等资料的真实性。
5、以往学校代表队同学成绩不影响其他同学排名及奖励。
竞赛细则1、选手在参赛时携带个人证件。
2、竞赛以上机为比赛方式。
3、竞赛中至少命题6题,至多命题10题,上机比赛时间为5个小时,中间不休息。
4、参赛选手可以携带诸如书籍、字典、手册、程序清单等文字性参考资料。
5、参赛选手不能携带任何可用计算机处理的软件或数据(不允许任何私人携带的磁盘或计算器)。
6、参赛选手不能携带任何类型的通讯工具,包括无线电接收器、移动电话等。
7、选手未解决全部题目不得提前离场8、竞赛的预定时间为5小时,但当竞赛进行一定时间后,竞赛裁判可以因为出现不可预见的事件而调整比赛时间长度,一旦比赛时间长度发生改变,将会以及时并且统一的方式通告所有参赛选手。
9、当参赛选手出现妨碍比赛正常进行的行为时,诸如擅自移动赛场中的设备,未经授权修改比赛软硬件,干扰他人比赛等,都将会被竞赛裁判取消参赛资格。
ACMICPC是世界上公认的规模最大、水平最高的国际大学生程序竞赛

3
5 5 6 10 11
2007年正式参加亚洲赛: 2007 铜奖1 (ICPC排名33) 2008 铜奖4 (ICPC排名29) 2009 银奖1 (ICPC排名18) 铜奖2 今天晚上还会多出一个银奖(排名未知)
地球上都有些什么重要比赛?
全球总决赛:每年春天 2~4 月份 代表全球各大洲的 100 余所 学校的 100 余支参赛队(绝对的精英、天才之战) 各大洲分区赛:每年 9~12 月份各赛区的选拔赛有40场左右,每 场比赛选出其中的 1-5% 参加全球总决赛 本年度亚洲区:哈尔滨工业大学、浙江大学宁波理工学院 上海东华大学、中国科技大学、武汉大学 (大陆)(中国区) 全国性竞赛:酝酿多年(由于各种问题存在,至今未果)
3. 比赛激起好胜之心,希望自己可以做到更高更强更好。
比赛不仅能学到算法编程的知识,更可以 学到对生活,成败的态度。
为什么有气球?
竞赛是一个节日,是 一场天才高手的盛会。
没有弱队,没有输家, 只有强队和更强的队。 登上领奖台可能有偶 然因素,但是不变的 是快乐。
竞赛真的快乐吗?
找找与校、院领导站一起的感觉
我们的成绩如何?
年度 2003 奖牌 无 最好名次 总参赛队 我校参赛队数 不祥 104 3
2004
2005 2006 2007 2008 2009
铜奖 3
金奖1、银奖2、铜奖2 金奖1、银奖1、铜奖1 银奖1、铜奖1 银奖4、铜奖2 金奖1、银奖2、铜奖1
18
8 7 11 22 8
143
183 147 142 300 300
哪些人可以来玩?
• 8-12个队/每年省赛 • 3-4个队/每年亚洲赛 (并期望 1个队/全球总决赛) • 中学在NOI成绩较好的选手,中学基本未接触编程而 有浓厚兴趣且有一定天赋之人有机会参加比赛。
【综合】Acm竞赛简介

Parity(ceoi99)(肖天)
• 建立sum数组,sum[i]表示从1到i之和是奇(true)还是偶 (false),sum[0]=false。这样题目中给的任意问题(a,b) 的答案都可以用sum[b] xor sum[a-1]表示。 • 开始我们并不知道sum[1..n]的值,不妨设为false,这时任意 sum[a],sum[b]都是独立的。对于每对问答(a,b,c),都可以 知道sum[b] xor sum[a-1]=c,由此把sum[b]和sum[a-1] 联系起来。这步操作可以用并查集完成,对于问答(a,b,c)如 果sum[a-1],sum[b]不属于一个集合就把它们并起来,否则 如果sum[a-1] xor sum[b]不等于c则说明出现矛盾,输出总 句数,退出。 • 对于不出现矛盾的sum数组,对于每个集合分为两个部分,我 们指定其中一个部分为true,另一个部分为false,则可以确定 sum数组,利用sum[i] xor sum[i-1]可以求出第i位的数字, 由于不同集合之间没有问答出现,所以此数列是一可行解,证 明算法正确。
• 但有时却是最好的办法
22
Pizza Anyone? (ZOJ 1219)
• 题目大意: 你需要为你和你的朋友们订一个皮萨。 每个朋友都会告诉你他们想和不想放进皮萨 里的东西。 你是否能订一个皮萨,让他满足每个人 至少一个条件。 假设一共有16种东西可以放进皮萨。
23
2 65536
16
是个对计算机很 小的数
3
ACM
ACM (Association for Computing Machinery) 成立于计算机诞生次年,是目前计算机学界中历史最 悠久、最具权威性的组织,是推进信息技术专业人员 和学生提高技巧的主要力量。ACM通过提供前沿技 术信息和从理论到实践的转化,为其全球7.5万名成 员服务,并已经成为信息科技领域的一个基本信息来 源。
ACM-ICPC入门介绍

ACM/ICPC入门首先,我很高兴看到这届的学弟学妹们能有兴趣来关注我们学校的ACM/ICPC竞赛项目,那什么是ACM/ICPC呢?下面我就做个简单的介绍吧~ACM国际大学生程序设计竞赛(英文全称:ACM International Collegiate Programming Contest(ACM-ICPC或ICPC))是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。
经过近30多年的发展,ACM国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。
赛事目前由IBM公司赞助。
比赛期间,每队使用1台电脑需要在5个小时内使用C、C++或Java中的一种语言编写程序解决7到10个问题。
简单点说就是当今世界含金量最高的大学生编程竞赛。
可能很多同学现在刚刚学C++没几天,感觉编程是个很难的一件事,实际上练熟了的话也不是很难的~而参加ACM正是一个帮助你锻炼编程能力的很好的机会,毕竟如果大家毕业以后想从事IT行业的话,没有扎实的编程功底,显然是……那如何入门呢~在这我介绍国内一个很好的OJ网站,很适合初级和中级水平的ACM选手来练习,杭州电子科技大学的OJ网址——/所谓OJ就是Online Judge在线判断的意思,让你通过网络把你做的编程题的源码提交上去,让OJ的服务器判断你的代码是否正确。
这个是杭电OJ主界面的截图~右上方有个登陆和注册窗:点击Register new ID即可,然后会进入一个注册界面:把打星号的选项填完后,点下方的Submit就好了~ 那怎么去做题呢?主界面有个Problem Archive,点击进入后,就能看到上方的Volume代表你所选的是第几卷题目,每卷有一百道题,那么我们先来看看第1000题吧,这个是最简单的一个ACM题了~题目大意是输入两个数A和B,要求输出A + B的值,这个基本上上过C++课的都应该能写出代码来,但要注意的是,在OJ系统里,对代码是有要求的。
吉林大学ACM国际大学生程序设计竞赛简介

吉林大学ACM国际大学生程序设计竞赛简介竞赛宗旨ACM国际大学生程序设计竞赛是由位于美国的计算机协会组织的年度性竞赛,是全球大学生计算机程序能力竞赛活动中最有影响的一项赛事,它已成为国内外各高校展示实力、加强交流、相互促进、共同发展的广阔舞台。
ACM/ICPC作为具有国际权威性和影响力的国际大学生程序设计竞赛,已成为衡量大学生程序设计能力和学校计算机学科水平的重要标准之一。
我校于2002、2003、2004、2005年参加亚洲预赛,分别在这八个赛区中取得学校排名第16、第17、第12、第9,第7、第18,第21,第17,共获得银奖2块、铜奖6块,竞赛成绩在不断稳步提高。
竞赛支持网站:(校外)(校内)竞赛联系地点:前卫南校区萃文楼501竞赛交流平台:吉林大学BBS 牡丹园-电脑技术-算法版/cgi-bin/bbsdoc?board=Algorithm参赛对象1、凡吉林大学在校本专科生均可报名参加。
年级、专业不限。
鼓励低年级同学参加。
2、比赛学生以个人身份参加,每人独立参赛。
3、参赛同学应在竞赛网站上注册参加热身赛,在报名时提供个人资料。
4、参赛同学应保证自己身份等资料的真实性。
5、以往学校代表队同学成绩不影响其他同学排名及奖励。
竞赛细则1、选手在参赛时携带个人证件。
2、竞赛以上机为比赛方式。
3、竞赛中至少命题6题,至多命题10题,上机比赛时间为5个小时,中间不休息。
4、参赛选手可以携带诸如书籍、字典、手册、程序清单等文字性参考资料。
5、参赛选手不能携带任何可用计算机处理的软件或数据(不允许任何私人携带的磁盘或计算器)。
6、参赛选手不能携带任何类型的通讯工具,包括无线电接收器、移动电话等。
7、选手未解决全部题目不得提前离场8、竞赛的预定时间为5小时,但当竞赛进行一定时间后,竞赛裁判可以因为出现不可预见的事件而调整比赛时间长度,一旦比赛时间长度发生改变,将会以及时并且统一的方式通告所有参赛选手。
9、当参赛选手出现妨碍比赛正常进行的行为时,诸如擅自移动赛场中的设备,未经授权修改比赛软硬件,干扰他人比赛等,都将会被竞赛裁判取消参赛资格。
ACM校赛比赛题目及分析

Problem A -- 超级难题Time Limit:1000ms Memory Limit:65535KBDescriptionACM程序设计大赛是大学级别最高的脑力竞赛,素来被冠以"程序设计的奥林匹克"的尊称。
大赛自1970年开始至今已有30年历史,是世界范围内历史最悠久、规模最大的程序设计竞赛。
比赛形式是:经过校级和地区级选拔的参赛组,于指定的时间、地点参加世界级的决赛,由3个成员组成的小组应用一台计算机解决6到8个生活中的实际问题。
参赛队员必须在5小时内编完程序并进行测试和调试。
此种大赛对参赛学生的逻辑分析能力、策略制定和脑力方面具有极大的挑战性。
大赛提倡在压力较大的情况下,培养学生的创造力、团队合作精神以解决竞赛的问题,从而挑选和发掘世界上最优秀的程序设计人才竞赛的历史可以上溯到1970年,当时在美国德克萨斯A&M大学举办了首届比赛。
当时的主办方是the Alpha Chapter of the UPE Computer Science Honor Society。
作为一种全新的发现和培养计算机科学顶尖学生的方式,竞赛很快得到美国和加拿大各大学的积极响应。
1977年,在ACM计算机科学会议期间举办了首次总决赛,并演变成为目前的一年一届的多国参与的国际性比赛。
迄今已经举办了29届ACM/ICPC以团队的形式代表各学校参赛,每队由3名队员组成。
每位队员必须是入校5年内的在校学生。
比赛期间,每队使用1台电脑需要在5个小时内使用C、C++、Pascal或Java中的一种编写程序解决8或10个问题。
程序完成之后提交裁判运行,并把运行结果及时通知参赛队。
而且有趣的是每队在正确完成一题后,组织者将在其位置上升起一只代表该题颜色的气球2009年的时候队伍A参加了ACM的区域赛,那次区域赛比赛总共有N个题,队伍A做了N个题中的M个。
队伍A 做第一题所用的时间为T1分钟,做第一题所用的时间为T2分钟,.......做第M题所用的时间为Tm分钟。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
国际大学生程序设计大赛(ACMICPC)简介及竞赛样题
附件二
国际大学生程序设计大赛(ACM/ICPC)简介
相关情况简介
一>、历届ACM-ICPC亚洲预选赛中国内地部分赛区参赛情况
二>、历届ACM-ICPC全球总决赛中国内地高校获奖情况
注:***金牌,**银牌,*铜牌;--表示未参加上一年的地区预赛,/ 表示上一年的地区预赛未能出线。
ACM/ICPC大赛简介
ACM/ICPC (ACM International Collegiate Programming Contest, 国际大学生程序设计竞赛)是由国际计算机界历史悠久、颇具权威性的组织ACM(Association for Computing Machinery,国际
计算机协会)主办的,是世界上公认的规模最大、水平最高的国际大学生程序设计竞赛,是一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。
其目的旨在使大学生运用计算机来充分展示自己分析问题和解决问题的能力。
该项竞赛从1970年至今已举办了34届,受到国际各知名大学的普遍重视,并受到全世界各著名计算机公司的高度关注,是信息企业与世界顶尖计算机人才对话的最好机会。
ACM国际大学生程序设计竞赛已成为世界各国大学生最具影响力的国际计算机类的赛事,是广大爱好计算机编程的大学生展示才华的舞台,是各个大学计算机教育成果的直接体现。
在过去十几年中,世界著名信息企业APPLE、AT&T、MICROSOFT和IBM分别担任了竞赛的赞助商。
中国大陆高校从1996年开始参加ACM/ICPC亚洲预赛,主要是各个重点院校。
该项竞赛分为区域预赛和国际决赛两个阶段进行,各预赛区第一名自动获得参加世界决赛的资格,世界决赛安排在每年的3~4月举行,而区域预赛安排在上一年的9~12月在各大洲举行。
ACM/ICPC的区域预赛是规模很大、范围很广的赛事,但历届河南省各高校却极少组队参加,为了提升和检验河南省计算机教育水平,河南省计算机学会从2008年开始,在河南省推广开展ACM国际大学生程序设计竞赛,为广大的爱好计算机编程的大学生提供展示才华的舞台,为河南省各高校组队参加ACM/ICPC的区域预赛的提供实战的场地,并以此为契机推动河南省计算机教育水平的提高。
第一届河南省大学生程序设计大赛在郑州大学举行,我校获得一金、一铜的好成绩;第二届由河南师范大学承办,我校获得一个铜奖。
我们鼓励同学们积极参加,无论最终比赛结果如何,这都会是一次非常好的锻炼自我的机会,能够参加这样高水平的赛事,与全省、全国乃至全球的计算机精英同台竞技,是对我们同学能力的考验,也是体现自我的一个机会。
ACM竞赛规则
竞赛宗旨:
ACM国际大学生程序设计竞赛(ACM/ICPC)是大学生们展示和
提高编程技能
与应用计算机解决问题能力的机会。
河南省第二届程序设计竞赛邀请河南省大学生参加,开展编程方面的公平竞赛,增进彼此间的交流和友谊。
参赛队组成:
1.教练是参赛队伍所代表高校的正式教师,教练必须保证所有队员符合本规则
的规定。
教练作为参赛队伍的代表,负责竞赛活动中的联系工作。
2.只有当竞赛组委会从教练处获得所有保证队伍合格的材料后,一支队伍才能
获得参赛的资格。
3.每支队伍最多由三名参赛队员组成。
4.每支队伍中至少有两名参赛队员必须是未取得学士学位或者同等学历的学
生。
5.取得学士学位超过两年,或进行研究生学习超过两年的学生不符合参赛队员
的资格。
比赛:
1.比赛形式为场地赛。
比赛时间均为5小时,命题6-10题(部分英文题目).
2.参赛队员可以携带诸如书、手册、笔记和程序清单等参考资料。
但不得携带
任何电子媒质的资料。
3.试题的解答提交裁判称为运行,每一次运行会被判为正确或者错误,判决结
果会及时通知参赛队伍。
4.名次统计:首先按照正确题目数量排名,如果正确数相同的,将按照完成题
目所花费的总时间从小到大的顺序进行排名。
每道试题用时将从
竞赛开始到试题解答被判定为正确为止,其间每一次错误的运行将被加罚20分钟时间,未正确解答的试题不计时。
5.参赛者可以使用自己熟悉的任何编程环境完成比赛题目,但是,必须保证自
己提交的C/C++代码可以在GCC和(或)G++3.4.1版本以上编译器中正常编译执行。
推荐的集成开发环境是DEV-CPP 4.9.9.2beta。
Dev-C++ 5.0 beta 9 (4.9.9.2) 下载主页:
/projects/dev-cpp/
6.每支队伍使用一台计算机,所有队伍使用计算机的规格配置完全相同。
7.参赛者禁止作弊。
一经发现,不仅会被清除出本次比赛,也将被禁止参加今
后的程序设计竞赛,同时将情况通报所属院校。
8.参赛者在比赛当天应服从大赛组委会的安排,遵守赛场纪律。
9.参赛者在比赛当天应按时参赛,迟到半小时以上不得进场。
关于ACM的官方网站和知名大学的竞赛网站
1、ACM/ICPC Official Site:/icpc/
2、Peking University:
3、Zhejiang University:/
4、/onlinejudge/
5、http://acm.sgu.ru/
6、/tc
7、http://acm.timus.ru/
附件三竞赛样题
中文题目TOM的艺术品
TOM设计了一件艺术品,该艺术品由N个构件堆叠而成,N个构件从高到低按层编号依次为1,2,…,N。
艺术品展出后,引起强烈的反响。
Tom观察到,人们尤其对作品的高端部分评价甚多。
狂热的Tom一激动,对组成该艺术品的N 个构件重新组合,比如:把第6层到第12层的构建搬下来,想一想,然后整体放到剩下构件的第7层下
面;过一会儿,又把第2层到第9层的构件搬下来,整体放到剩下构件的第1层下面等等。
于是,T om在进行了连续若干次“搬来搬去”后,还是这N个构件又诞生了一件新的艺术品。
编程:请输出新的艺术品最高十层构件的编号。
[标准输出]
第一行: N K 表示构件的总数和“搬来搬去”的总次数
第2~K+1行: A B C 表示要搬动的构件(即从第A层到B层)整个放在第c层下面;
如果C=0,则要搬动的构件将放到最高层。
[标准输出]
由十行组成,分别为组成新艺术品的第一层到第十层构件的编号。
[约束条件]
(1)10≤N≤20000 1≤K≤100
(2)1≤A≤B≤N 0≤C≤N-(B-A+1)
[样例]
竞赛样题二英文题目
Time Limit: 1000MS
Y ou are given two integernumbers X and Y. Write a program
to calculate X+Y and X-Y. Input
The first line of the input file contains a single integer N, the number of test cases. The following N lines each contains two integers----X and Y ( 0 < X,Y <=10100 ).
Outpt
Print the value of X+Y, X-Y on a separate line.
Sample input and output。