概況
ACM國際大學生程式設計競賽(ICPC)的歷史可以上溯到1970年,當時美國德州A&M大學舉辦了首屆競賽,主辦方是
UPE計算機科學榮譽協會Alpha分會。作為一種發現和培養計算機科學這一新興領域頂尖學生的全新方式,競賽很快得到了美國和加拿大多所大學的積極回響。
1977年,首屆
ICPC總決賽在ACM計算機科學會議期間舉行,並由此演變成一項多級競賽。此後,ACM擔任競賽主辦方,並於1989年將大賽總部設在了美國德克薩斯州的貝勒大學。從此,該競賽逐漸發展成了一個舉辦區域預賽選拔參賽隊伍參加ACM-ICPC全球決賽的全球大學網路。
1997年,
IBM成為競賽的贊助方。IBM的加盟促使競賽的規模擴大了七倍。參賽人數顯著增加,涉及來自六大洲83個國家1,821所大學數萬名計算領域的頂尖學生和教師。
競賽過程
ACM競賽總決賽整個競賽為5個小時10道題,由計算機出題,3人一組的參賽隊伍必須現場作答。經由裁判評判,根據破解試題數目的多少對參賽隊伍進行排名,解題數在中等以下的隊伍會得到確認但不會進行排名。根據排名將最終確定全球總決賽銅獎4名、銀獎4名、金獎4名,金獎中第1名為此次比賽的全球總冠軍。每屆ACM/ICPC競賽都是精英薈萃、新才輩出,因而倍受全球著名信息企業的高度關注,在過去幾年中,
APPLE、
AT&T、
MICROSOFT和
IBM分別擔任了競賽的贊助商。
背景與歷史
1970年在美國texasa&m大學舉辦了首次區域競賽,從而拉開了國際大學生程式設計競賽的序幕。1977年,該項競賽被分為兩個級別——區域賽和總決賽,這便是現代acm競賽的開始。在亞洲、美國、歐洲、太平洋地區均設有區域賽點。1995至1996年,來自世界各地的一千多支s代表隊參加了acm區域競賽。acm大學生程式設計競賽由美國計算機協會(acm)舉辦,旨在向全世界的大學生提供一個展示和鍛鍊其解決問題和運用計算機能力的機會,現已成為全世界範圍內歷史最悠久、規模最大的大學生程式設計競賽。
競賽組織
競賽在由各高等院校派出的3人一組的隊伍間進行,分兩個級別。參賽隊應首先參加每年9月至11月在世界各地舉行的“區域競賽(regionalcontest)”。各區域競賽得分最高的隊伍自動進入第二年3月在美國舉行的“決賽(finalcontest)”,其它的高分隊伍也有可能被邀請參加決賽。每個學校有一名教師主管隊伍,稱為“領隊”(facultyadvisor),他負責選手的資格認定並指定或自己擔任該隊的教練(coach)。每支隊伍最多由三名選手(contestant)組成,每個選手必須是正在主管學校攻讀學位並已讀完至少一半時間的學生。每支隊伍最多允許有一名選手具有學士學位(就是說至少有兩個還沒有取得學士學位),已經參加兩次決賽的選手不得再參加區域競賽。
競賽形式
競賽進行5個小時,一般有6—8道試題,由同隊的三名選手使用同一台計算機協作完成。當解決了一道試題之後,
ACM競賽將其提交給評審,由評審判斷其是否正確。若提交的程式運行不正確,則該程式將被退回給參賽隊,參賽隊可以進行修改後再一次提交該問題。程式運行不正確是指出現以下4種情況之一:
(1)運行出錯(run-timeerror);
(2)運行逾時〔time-limitexceeded);
(3)運行結果錯誤(wronganswer);
(4)運行結果輸出格式錯誤(presentationerror)。
競賽結束後,參賽各隊以解出問題的多少進行排名,若解出問題數相同,按照總用時的長短排名。總用時為每個解決了的問題所用時間之和。一個解決了的問題所用的時間是競賽開始到提交被接受的時間加上該問題的罰時(每次提交通不過,罰時20分鐘)。沒有解決的問題不記時。美國英語為競賽的工作語言。競賽的所有書面材料(包括試題)將用美國英語寫出,區域競賽中可以使用其它語言。總決賽可以使用的程式設計語言包括pascal,c,c++及java,也可以使用其它語言。具體的作業系統及語言版本各年有所不同。
競賽獎勵情況
總決賽前十名的隊伍將得到高額獎學金:第一名獎金為12000美元,第二名獎金為6000美元,第三名獎金為3000美元,第四名至第十名將各得到1500美元。除此之外還將承認北美冠軍、歐洲冠軍、南太平洋冠軍及亞洲冠軍。
腦力之爭
ACM競賽競賽規定每支參賽隊伍由三名在校大學生組成,他們需要在規定的五個小時內解決八個或更多的複雜實際編程問題。每隊使用一台電腦,參賽者爭分奪秒,與其他參賽隊伍拼比邏輯、策略和心理素質。
團隊成員將在多名專家裁判的嚴格督察下通力合作,對問題進行難度分級、推斷出要求、設計測試平台並構建軟體系統,最終成功地解決問題。對於一名精通計算機科學的學生而言,有些問題只是精確度的問題;而有些則需要學生了解並掌握高級算法;還有一些問題是普通學生無法解決的,不過對於那些最優秀的學生而言,這一切都不在話下。
競賽的評判過程十分嚴格。我們分發給學生的是問題陳述,而不是要求須知。他們會收到一個測試數據實例,但無法獲得裁判的測試數據和接受標準方面的信息。若每次提交的解決方案出現錯誤,就會受到加時懲罰。畢竟,在處理頂級計算問題時,誰也不想浪費客戶的時間。在最短的累計時間內,提交次數最少、解決問題最多的隊伍就是最後的勝利者。
IBM的承諾
在IBM所開展的眾多學術活動中,贊助ACM-ICPC賽事占有十分重要的位置。此舉旨在促進開放原始碼編程技巧的發展,培養更具競爭力的IT工作人員,從而推動全球創新和經濟成長。
關於ACM
ACM(美國計算機協會)是一家科教性質的協會,旨在聯合全球計算機領域的教學人員、研究人員和從業人員,開展行業交流活動、共享資源和解決業界難題。憑藉絕對的領導地位,ACM始終致力於推行最高行業標準,表彰傑出技術人才,加強計算機行業的整體隊伍建設。ACM通過為成員提供終生學習、職業發展及與專業人士聯誼的機會,支持其在各自的專業領域取得長足進步。
基本信息
第32屆ACM國際大學生程式設計競賽(ICPC)又名“腦力之爭”(BattleoftheBrains),其舉辦宗旨是為大學生提供一
ACM競賽個集中的展示舞台,表現他們在五個小時的指定時間內解決實際電腦編程問題的超強能力。
2007年9月-12月全球已經有來自83個國家1,821所大學的6,700支參賽隊伍參加了預賽(分213個賽場舉行),預賽結束後僅有100支參賽隊伍闖入全球總決賽。全球總決賽將於2008年4月6日-10日在位於加拿大阿爾伯塔省的班夫溫泉城堡飯店舉行。
這一年度盛事由下列幾級比賽組成:
-本地競賽——各大學挑選參賽隊伍,或在本校範圍內舉辦比賽選拔一支或幾支隊伍代表學校參加下一級比賽。選拔範圍為全球30多萬名計算機專業的學生。
-區域預賽(2007年9月-12月)——今年的參賽隊伍增加了10%(其中不包括參加初賽的隊伍),從去年的6,099支增加到了6,700支。這些隊伍代表來自六大洲83個國家的1,821所大學。
-全球總決賽(2008年4月6日-10日,加拿大阿爾伯塔省的班夫溫泉城堡飯店)——為慶祝阿爾伯塔大學成立一百周年,一百(100)支決賽隊伍將代表六大洲的頂級大學參賽,角逐獎品、獎金和展示權。