-
ACM國際大學生程序設計競賽
鎖定
- 中文名
- 國際大學生程序設計競賽
- 外文名
- International Collegiate Programming Contest
- 主辦機構
- 美國計算機協會(ACM)
- 簡 稱
- ICPC
- 適用人羣
- 大學生
- 贊助方
- AWS、華為和Jetbrains
ACM國際大學生程序設計競賽賽事歷程
ACM國際大學生程序設計競賽的歷史可以上溯到1970年,當時在美國德克薩斯A&M大學舉辦了首屆比賽。當時的主辦方是the Alpha Chapter of the UPE Computer Science Honor Society。作為一種全新的發現和培養計算機科學頂尖學生的方式,競賽很快得到美國和加拿大各大學的積極響應。1977年,在ACM計算機科學會議期間舉辦了首次總決賽,並演變成為一年一屆的多國參與的國際性比賽。
最初幾屆比賽的參賽隊伍主要來自美國和加拿大,後來逐漸發展成為一項世界範圍內的競賽。特別是自1997年IBM開始贊助賽事之後,賽事規模增長迅速。1997年,總共有來自560所大學的840支隊伍參加比賽。而到了2004年,這一數字迅速增加到840所大學的4109支隊伍並以每年10-20%的速度在增長。
在賽事的早期,冠軍多為美國和加拿大的大學獲得。而進入1990年代後期以來,俄羅斯和其它一些東歐國家的大學連奪數次冠軍。來自中國大陸的上海交通大學代表隊則在2002年在美國夏威夷舉辦的第26屆、2005年在上海舉辦的第29屆和2010年在哈爾濱舉辦的第34屆的全球總決賽上三奪冠軍;浙江大學參賽隊在美國當地時間2011年5月30下午2時結束的第35屆ACM國際大學生程序設計競賽全球總決賽榮獲全球總冠軍,成為除上海交通大學之外唯一獲得ACM國際大學生程序設計競賽全球總決賽冠軍的亞洲高校。這也是為止亞洲大學在該競賽上取得的最好成績。賽事的競爭格局已經由最初的北美大學一枝獨秀演變成當前的亞歐對抗局面。
2015年全球總決賽,聖彼得堡國立資訊科技、機械與光學大學AC了所有題目(13道),成為了ACM-ICPC歷史上第一支在全球總決賽中AK的隊伍,也成為了歷史上獲得ACM-ICPC全球總決賽冠軍次數最多(6次)的隊伍,這一表現,被當場比賽主持人稱作the best of best of best。
[2]
2023年3月,華為杯第47屆icpc國際大學生程序設計競賽(international collegiate programming contest)(亞洲區)決賽上,同濟大學學生代表隊從全國314支隊伍中脱穎而出,分別獲得1金1銀1銅。
[9]
ACM國際大學生程序設計競賽簡要規則
ACM-ICPC以團隊的形式代表各學校參賽,每隊由至多3名隊員組成。每位隊員必須是在校學生,有一定的年齡限制,並且每年最多可以參加2站區域選拔賽。
比賽期間,每隊使用1台電腦需要在5個小時內使用C/C++、Java和Python中的一種編寫程序解決7到13個問題。程序完成之後提交評測機運行,運行的結果會判定為正確或錯誤兩種並及時通知參賽隊。而且有趣的是每隊在正確完成一題後,組織者將在其位置上升起一隻代表該題顏色的氣球,每道題目第一支解決掉它的隊還會額外獲得一個“FIRST PROBLEM SOLVED”的氣球。
最後的獲勝者為正確解答題目最多且總用時最少的隊伍。每道試題用時將從競賽開始到試題解答被判定為正確為止,其間每一次提交運行結果被判錯誤的話將被加罰20分鐘時間,未正確解答的試題不記時。
與其它計算機程序競賽(例如國際信息學奧林匹克,IOI)相比,ACM-ICPC的特點在於其題量大,每隊需要在5小時內完成7道或以上的題目。另外,一支隊伍3名隊員卻只有1台電腦,使得時間顯得更為緊張。因此除了紮實的專業水平,良好的團隊協作和心理素質同樣是獲勝的關鍵。
ACM國際大學生程序設計競賽競賽特點
2.競賽中命題10題左右,試題描述為英文,比賽時間為5個小時,前四個小時可以實時看到排名,最後一小時封榜,無法看到排名。
5.選手可攜帶任何非電子類資料,包括書籍和打印出來的程序等,部分賽區會對選手攜帶的紙質資料做限制。
6.評委負責將結果(正確或出錯的類型)通過網絡儘快返回給選手,除此之外不提供任何額外幫助;
7.每個題目對應一種顏色的氣球,通過該題目的隊伍會得到對應顏色氣球。每道題目第一支解決掉它的隊還會額外獲得一個“FIRST PROBLEM SOLVED”的氣球。
ACM國際大學生程序設計競賽賽事構成
賽事由各大洲區域預賽和全球總決賽兩個階段組成。決賽安排在每年的3-5月舉行,而區域預賽一般安排在上一年的9-12月舉行。原則上一個大學在一站區域預賽最多可以有3支隊伍,但只能有一支隊伍參加全球總決賽。
入圍世界總決賽名額(WF Slots)分為參與名額(Participation Slots)、獎牌名額(Medal Bonus Slots)和其他紅利名額(Other Bonus Slots)三類。其中參與名額是從ICPC總部分配給各大洲區的參與名額(ParticipationSlots)中,由各大洲洲區主席確定並分配給洲子賽區的部分,其中各預賽區第一名自動獲得參加全球總決賽的資格;獎牌名額是ICPC總部根據上一年度總決賽結果直接分配給獲得獎牌的特定學校的名額;其他紅利名額是各大洲區主席從ICPC總部爭取到的額外獎勵名額。
全球總決賽第一名將獲得獎盃一座。另外,成績靠前的參賽隊伍也將獲得金、銀和銅牌。而解題數在中等以下的隊伍會得到確認但不會進行排名。
ACM國際大學生程序設計競賽評分標準
競賽進行5個小時,一般有7道或以上試題,由同隊的三名選手使用同一台計算機協作完成。當解決了一道試題之後,將其提交給評測機,由評測機判斷其是否正確。若提交的程序運行不正確,則該程序將被退回給參賽隊,參賽隊可以進行修改後再一次提交該問題。程序判定結果有如下7種:
2、Wrong Answer.——答案錯誤。(WA)
3、Runtime Error.——程序運行出錯,意外終止等。(RE)
4、Time Limit Exceeded. ——超時(超出時間限制)。程序沒在規定時間內出答案。(TLE)
5、Presentation Error. ——格式錯誤。程序沒按規定的格式輸出答案。(PE)
6、Memory Limit Exceeded. ——超內存(超出內存限制)。程序沒在規定空間內出答案。(MLE)
7、Compile Error. ——編譯錯誤。程序無法編譯。(CE)
競賽結束後,參賽各隊以解出問題的多少進行排名,若解出問題數相同,按照總用時的長短排名。總用時為每個解決了的問題所用時間之和。一個解決了的問題所用的時間是競賽開始到提交被接受的時間加上該問題的罰時(每次提交通不過,罰時20分鐘)。沒有解決的問題不記時。例如:A、B兩隊都正確完成兩道題目,其中A隊提交這兩題的時間分別是比賽開始後1:00和2:45,B隊為1:20和2:00,但B隊有一題提交了2次。這樣A隊的總用時為1:00+2:45=3:45而B隊為1:20+2:00+0:20=3:40,所以B隊以總用時少而獲勝。美國英語為競賽的工作語言。競賽的所有書面材料(包括試題)將用美國英語寫出,區域競賽中可以使用其它語言。總決賽可以使用的程序設計語言包括pascal,c,c++及java,也可以使用其它語言。具體的操作系統及語言版本各年有所不同。
ACM國際大學生程序設計競賽獎勵情況
區域賽一般分別按10%,20%,30%的比例頒發金,銀,銅獎,即一般情況(120隊伍)有12支隊伍獲金牌,24支隊伍獲銀牌,36支隊伍獲銅牌,其餘為優勝獎。
2012年亞洲區域賽中國大陸5大賽區由華為公司贊助,有獎金(冠5000、亞3000、季2000,非冠亞季的金牌1200,FB(First Blood,指全場第一個解答出某道題) 800,最佳女隊800,頑強拼搏500)。頑強拼搏是全場最後一個AC,且只AC1道題的隊伍。
總決賽前十名的隊伍將得到高額獎學金:第一名獎金為12000美元,第二名獎金為6000美元,第三名獎金為3000美元,第四名至第十名將各得到1500美元。除此之外還將承認北美冠軍、歐洲冠軍、南太平洋冠軍及亞洲冠軍。
ACM國際大學生程序設計競賽賽事意義
團隊成員將在多名專家裁判的嚴格督察下通力合作,對問題進行難度分級、推斷出要求、設計測試平台並構建軟件系統,最終成功地解決問題。對於一名精通計算機科學的學生而言,有些問題只是精確度的問題;而有些則需要學生了解並掌握高級算法;還有一些問題是普通學生無法解決的,不過對於那些最優秀的學生而言,這一切都不在話下。
競賽的評判過程十分嚴格。分發給學生的是問題陳述,而不是要求須知。他們會收到一個測試數據實例,但無法獲得裁判的測試數據和接受標準方面的信息。若每次提交的解決方案出現錯誤,就會受到加時懲罰。畢竟,在處理頂級計算問題時,誰也不想浪費客户的時間。在最短的累計時間內,提交次數最少、解決問題最多的隊伍就是最後的勝利者。
ACM國際大學生程序設計競賽主辦方簡介
ACM(美國計算機協會)是一家科教性質的協會,旨在聯合全球計算機領域的教學人員、研究人員和從業人員,開展行業交流活動、共享資源和解決業界難題。憑藉絕對的領導地位,ACM始終致力於推行最高行業標準,表彰傑出技術人才,加強計算機行業的整體隊伍建設。ACM通過為成員提供終生學習、職業發展及與專業人士聯誼的機會,支持其在各自的專業領域取得長足進步。
[7]
ACM國際大學生程序設計競賽歷屆情況
1977年以來歷年全球總決賽的冠軍:
年份 | 總決賽地點 | 冠軍大學 | 國家 | 隊員 | 教練 |
---|---|---|---|---|---|
2024年 | 埃及,盧克索 | 北京大學
[11]
| 中國 | 王展鵬 蔣凌宇 羅煜翔 | 羅國傑 |
2021年 | 孟加拉,達卡 | 麻省理工學院
[10]
| 美國 | Xiao Mao 鄧明揚 Jerry Mao | Ce Jin Yinzhan Xu |
2020年 | 俄羅斯,莫斯科 | 俄羅斯 | Aleksei Daniliuk Valeria Ryabchikova Nikolay Kalinin | Alexey Shmelev Vladislav Epifanov Nikolai Borisov | |
2019年 | 葡萄牙波爾圖 | 俄羅斯 | - | - | |
2018年 | 中國北京 | 俄羅斯 | - | - | |
2017年 | 美國南達科他州 | 俄羅斯 | - | - | |
2016年 | 泰國普吉島 | 俄羅斯 | - | - | |
2015年 | 摩洛哥馬拉喀什 | 俄羅斯 | - | - | |
2014年 | 俄羅斯葉卡特琳堡 | 俄羅斯 | - | - | |
2013年 | 俄羅斯聖彼得堡 | 俄羅斯 | - | - | |
2012年 | 波蘭華沙 | 俄羅斯 | - | - | |
2011年 | 美國奧蘭多 | 中國 | - | - | |
2010年 | 中國哈爾濱 | 中國 | - | - | |
2009年 | 俄羅斯 | - | - | ||
2008年 | 加拿大班夫 | 俄羅斯 | - | - | |
2007年 | 日本東京 | 波蘭 | - | - | |
2006年 | 美國得克薩斯州 | 俄羅斯 | - | - | |
2005年 | 中國上海 | 中國 | - | - | |
2004年 | 俄羅斯 | - | - | ||
2003年 | 美國洛杉磯 | 波蘭 | - | - | |
2002年 | 美國夏威夷 | 中國 | - | - | |
2001年 | 加拿大温哥華 | 俄羅斯 | - | - | |
2000年 | 美國奧蘭多 | 俄羅斯 | - | - | |
1999年 | 荷蘭埃因霍温 | 加拿大 | - | - | |
1998年 | 美國亞特蘭大 | 捷克 | - | - | |
1997年 | 美國聖何塞 | 哈維瑪德大學 | 美國 | - | - |
1996年 | 美國費城 | 加州大學伯克利分校 | 美國 | - | - |
1995年 | 美國納什維爾 | 德國 | - | - | |
1994年 | 美國菲尼克斯 | 加拿大 | - | - | |
1993年 | 美國印第安納波利斯 | 美國 | - | - | |
1992年 | 美國堪薩斯城 | 澳大利亞 | - | - | |
1991年 | 美國聖安東尼奧 | 美國 | - | - | |
1990年 | 美國華盛頓 | 新西蘭 | - | - | |
1989年 | 美國路易斯維爾 | 加州大學洛杉磯分校 | 美國 | - | - |
1988年 | 美國亞特蘭大 | 美國 | - | - | |
1987年 | 美國聖路易斯 | 美國 | - | - | |
1986年 | 美國辛辛那提 | 美國 | - | - | |
1985年 | 美國新奧爾良 | 美國 | - | - | |
1984年 | 美國費城 | 美國 | - | - | |
1983年 | 美國墨爾本 | 美國 | - | - | |
1982年 | 美國印第安納波利斯 | 美國 | - | - | |
1981年 | 美國聖路易斯 | 密蘇里-羅拉大學 | 美國 | - | - |
1980年 | 美國堪薩斯城 | 華盛頓大學聖路易斯分校 | 美國 | - | - |
1979年 | 美國代頓 | 華盛頓大學聖路易斯分校 | 美國 | - | - |
1978年 | 美國底特律 | 美國 | - | - | |
1977年 | 美國亞特蘭大 | 美國 | - | - |
ACM國際大學生程序設計競賽中國賽區
ACM國際大學生程序設計競賽亞洲區預選賽
歷年中國大陸舉辦區域賽地點:
年份 | - | - | - | - | - | - |
---|---|---|---|---|---|---|
1996年 | - | - | - | - | - | |
1997年 | - | - | - | - | - | |
1998年 | - | - | - | - | - | |
1999年 | - | - | - | - | - | |
2000年 | - | - | - | - | - | |
2001年 | - | - | - | - | - | |
2002年 | - | - | - | - | ||
2003年 | - | - | - | - | ||
2004年 | - | - | - | - | ||
2005年 | - | - | - | |||
2006年 | - | - | - | |||
2007年 | - | - | ||||
2008年 | 中國科學技術大學(特別賽區) | - | ||||
2009年 | - | |||||
2010年 | - | |||||
2011年 | - | |||||
2012年 | - | |||||
2013年 | - | |||||
2014年 | ||||||
2015年 | 上海大學(特別賽區)
[4]
|
ACM國際大學生程序設計競賽世界總決賽
由上海交通大學承辦的第29屆ACM國際大學生程序設計競賽全球總決賽於2005年4月3-7日期間在上海浦東的香格里拉酒店舉行。總共有78支隊伍參加總決賽的角逐,它們是從來自6大洲71個國家1582所大學的4109支隊伍中通過之前的各級區域預賽中脱穎而出的。在當地時間4月6日上午舉行的全球總決賽上,東道主上海交通大學代表隊是所有參賽隊伍中唯一一支解出8道題目的隊伍,從而在時隔3年之後第二次奪得全球總冠軍。
由哈爾濱工程大學承辦的第34屆ACM國際大學生程序設計競賽全球總決賽於2010年2月在哈爾濱舉行,上海交通大學再次奪冠。
2018年3月26日,方正集團贊助北京大學ACM-ICPC(國際大學生程序設計競賽)全球總決賽捐贈儀式在北京大學舉行。方正集團、北京大學信息科學技術學院與北京大學教育基金會簽署了捐贈協議,北京大學副校長王仰麟向方正集團頒發了“北京大學傑出教育貢獻獎”。
2018年,北京大學將迎來120週年校慶。作為校慶活動之一,北京大學將舉辦第42屆國際大學生程序設計競賽全球總決賽,以此推動計算機教育在中國的普及,激發更多學生學習計算機的熱情,為國家人工智能戰略培養和輸送更優質的後備人才。和北京大學有着深厚淵源的方正集團首次作為全球鑽石贊助商參與這項國際賽事。方正集團成為全球鑽石贊助商,使得賽事的承辦工作有了堅實的保障。
[1]
- 參考資料
-
- 1. 方正集團支持北京大學承辦第42屆ACM-ICPC .新浪[引用日期2018-03-26]
- 2. ACM-ICPC2015世界總決賽最終排行榜 .C語言網.2015-05-20[引用日期2015-07-25]
- 3. 我校獲得第39屆ACM-ICPC全球總決賽第28名優異成績 .北京交通大學計算機與信息技術學院官網.2015-05-26[引用日期2015-07-25]
- 4. 2015 ACM/ICPC 中國區賽區基本信息 .ACM/ICPC信息站.2015-07-09[引用日期2015-07-25]
- 5. The ICPC International Collegiate Programming Contest .ICPC官網[引用日期2021-06-27]
- 6. 2021 ICPC Asia EC各區域賽情況彙總-ICPC北京總部 .北京大學[引用日期2021-11-14]
- 7. 國際大學生程序設計競賽 .國際大學生程序設計競賽[引用日期2022-09-16]
- 8. 華為杯第47屆ICPC亞洲區決賽舉行 北大清華浙大分獲冠亞季軍 .新民晚報[引用日期2023-03-29]
- 9. 國際競賽1金1銀1銅!同濟學子再傳捷報 .上觀新聞.2023-03-31[引用日期2023-03-31]
- 10. ICPC World Champion Hall of Fame .icpc.global.2021-12-12[引用日期2023-07-26]
- 11. 北大學子捧得國際大學生程序設計競賽全球總冠軍 .北京大學信息科學技術學院.2024-04-19[引用日期2024-05-25]
- 收起