資料介紹
參加程序設計大賽的須知資料
最負盛名的程序設計競賽程序設計競賽有著各種各樣的形式,在此,我們來介紹其中最負盛名的幾個。
1.2.1 世界規模的大賽——Google Code Jam(GCJ)它是Google公司幾乎每年都會舉辦的世界規模的程序設計競賽,參賽者要在2~3小時內解決大約4 道題。一旦從在線(Online)進行的幾輪預選中勝出,就能夠參加現場(Onsite)總決賽。該賽事的特點是,每道題都備有Small和Large兩組輸入數據。即便是難度系數較大的問題,只要輸入規模足夠小,依然可以簡單地求解,這一形式深受廣大參賽者的喜歡。另外,GCJ并不在服務器上自動執行程序,而是要求將源代碼和本地執行的結果一同提交。
1.2.2 向高排名看齊!——TopCoder TopCoder公司是一家策劃并舉辦程序設計競賽的公司,它舉辦的比賽涉及多個領域。其中之一就是算法(Algorithm)比賽,該賽事大致每周都以SRM(Single Round Match)的形式舉辦一場,其具有以下特點。 (1) 在 1 小時 15 分鐘的短時間內挑戰 3 道題。 (2) 提交的結果在比賽結束前是不知道的,整個過程中稍有失誤,就會變成 0 分。 (3) 在編碼階段(coding phase)結束后,還有一個挑戰階段(challege phase)。該階段可以查找別人代碼中的漏洞。如果能夠提供一組輸入數據,使別人的程序返回錯誤的結果,就能得到額外的分數。其中第3條是該賽事獨一無二的特點①,也是閱讀別人代碼的好機會。TopCoder還有一個深受大家喜歡的等級分系統(rating system),它會依據SRM的結果給參賽選手排名。另外,TopCoder還會舉辦一年一度的TCO(TopCoder Open)公開賽。一旦從在線進行的幾輪預選中勝出,就能夠參加在拉斯維加斯②舉辦的總決賽。
1.2.3 歷史最悠久的競賽——ACM-ICPC ACM-ICPC是由美國計算機協會(ACM)主辦的、面向大學生的競賽,也是歷史最悠久的程序設計競賽。這是一個三人一隊的團隊比賽,選手要在5個小時內解決大約10道題。因為比賽中三名選手共用一臺電腦,題量又比其他賽事多,并且多是一些實現復雜的問題,所以團隊配合顯得異常重要。想要從日本參加該項賽事,首先要參加在線進行的國內預選賽,勝出后才能參加亞洲區域賽,取得前幾名的好成績后才能夠參加世界總決賽。①
1.2.4 面向中學生的信息學奧林匹克競賽——JOI-IOI 信息學奧林匹克競賽是學科奧林匹克競賽的一種,是以初中生和高中生為參賽對象的程序設計競賽。在日本,首先要參加日本信息學奧林匹克競賽,取得優異成績后,才能作為日本國家隊選手參加國際信息學奧林匹克競賽。②其他比賽都需要盡可能快地解決盡可能多的問題,而信息學奧林匹克競賽只要在規定時間內求解問題即可,成績與所用時間無關,但是它相對其他比賽而言,求解每道題所花的時間要長得多。雖然是面向中學生的比賽,每年所出問題的難度卻是非常高的。
1.2.5 通過網絡自動評測——Online Judge(OJ)在互聯網上,有一些被稱為Online Judge的系統,它們能夠自動評測以往程序設計競賽中的題目。利用該系統就可以練習了。另外,其中一些Online Judge也會定期舉辦自己的比賽,不妨去參加一下。在此列舉幾個有名的Online Judge。? PKU Online Judge (POJ)——http://poj.org/ 題庫中有大量的題目。? 會津大學Online Judge(AOJ)——http://judge.u-aizu.ac.jp/onlinejudge/ 還包含日語題。? Sphere Online Judge(SPOJ)——http://www.spoj.pl/ 允許使用各種各樣的編程語言。? SGU Online Contester——http://acm.sgu.ru/ 具有模擬參加歷史比賽的虛擬賽功能。? UVa Online Judge——http://uva.onlinejudge.org/ 老字號Online Judge,經常舉辦比賽。? Codecorces——http://codeforces.com/ 與TopCoder一樣定期舉辦比賽,又同其他網站一樣不斷維護歷屆題庫。
1.3 本書的使用方法在此,就本書所涉及的內容、使用方法及注意點做一下說明。
1.3.1 本書所涉及的內容本書主要講解程序設計競賽中的經典問題和基礎算法,并介紹便捷的實用技巧。如果僅僅是死記經典問題和基礎算法,遇到難解的應用問題或是需要靈活想象力的問題時,仍然會難以下手。因此,為了加深理解,我們通過選自POJ的經典題和部分原創題來介紹實踐中的例子。另外,每章末尾都備有挑戰GCJ中實戰題目的小欄目,里面都是精選出來的題目。盡管要找到正確的解法恐怕不太容易,還是建議讀者先自己試著多思考一下。在此基礎上再閱讀題解,能夠得到更深刻的理解。當然,在本書所介紹的解法之外,還會有更簡潔或更高效的解法。大家不妨多試著去思考一下別的解法。
1.3.2 所用的編程語言比賽中可用的編程語言各色各異,而C++在幾乎所有比賽中都可用。它的運行速度快,庫函數豐富,因而人氣很高。本書選擇C++作為所用的編程語言,并基本按照g++的規范來編寫源代碼。
1.3.3 題目描述的處理在世界規模的大賽中,理所當然是用英語來描述題目的。不過,因為題目描述中的英語不那么難,所用的單詞往往也非常有限,所以很快就能習慣。當然,這不是英語考試,字典也是允許自由使用的。另外,其中有些比賽會針對日本選手提供日語版的題目描述。英語的閱讀理解不是題目的關鍵,因此本書的題目都與最開始的例子一樣用中文概述①。
1.3.4 程序結構在許多比賽中,程序都從標準輸入按指定格式讀入數據。輸入并非問題的關鍵,所以本書的程序
- C語言程序設計第四講結構化程序設計之選擇 0次下載
- Python的程序設計資料合集 22次下載
- Linux窗口程序設計 12次下載
- 匯編程序設計的教程課件免費下載 17次下載
- JAVA程序設計教程之JSP程序設計實驗 6次下載
- C++程序設計教程之程序設計初步資料說明 7次下載
- Visual FoxPro程序設計教程之結構化程序設計的詳細資料說明 8次下載
- VB程序設計電子教程之圖形程序設計的詳細資料說明 13次下載
- C語言程序設計教程之選擇結構程序設計的資料說明 4次下載
- C語言程序設計教程之分支結構程序設計的課件免費下載 6次下載
- 簡單的C程序設計教程之順序程序設計的資料概述 4次下載
- 面向對象的程序設計總結與過程化程序設計有什么區別? 0次下載
- 南橋杯第二屆程序設計競賽 0次下載
- 一種基于ACM程序設計競賽在線評測系統解決方案
- 實用算法分析與程序設計 0次下載
- PLC程序設計常用方法總結 5402次閱讀
- 淺談項目中的程序設計思路與步驟 1338次閱讀
- 解析PLC梯形圖程序設計 1610次閱讀
- RTOS應用程序設計的五個實戰技巧 1119次閱讀
- 如何利用邏輯設計法進行PLC的程序設計 4017次閱讀
- PIC系列單片機程序設計基礎知識詳細說明 4638次閱讀
- 介紹MATLAB程序設計中M程序及使用方法 7018次閱讀
- dsp28335如何入門:程序設計步驟 1.9w次閱讀
- 基于vhdl蜂鳴器程序設計詳解 2.1w次閱讀
- vhdl數碼管動態掃描程序設計(四種設計方案) 1.8w次閱讀
- 由傳統電工圖轉換為階梯圖的過程,淺談程序設計 5557次閱讀
- 單片機C語言程序設計:TIMER0與TIMER1控制條形LED 3999次閱讀
- 程序設計基礎:字符能像整數一樣計算 4532次閱讀
- 單片機與程序設計(下) 2919次閱讀
- 單片機與程序設計(上) 3890次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1490次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論