發(fā)布時間:2023-07-29 10:27:02
編輯:小妹來源:網(wǎng)絡(luò)瀏覽:次
美國USACO計(jì)算機(jī)競賽是美國一項(xiàng)面向中學(xué)生的信息學(xué)競賽,USACO極為重視對算法時間效率與優(yōu)化水平的考察,很多試題必須要進(jìn)行非常細(xì)致的優(yōu)化才能夠通過。相比其他學(xué)科競賽,參加USACO至少有三次月賽和一次公開賽機(jī)會晉級,可最大程度、最低成本提升學(xué)術(shù)背景,對海外升學(xué)非常有幫助。
登錄USACO官網(wǎng)http://www.usaco.org/,
點(diǎn)擊Register for New Account按鈕,注冊新賬戶。
注冊后填寫個人信息:
注冊結(jié)束后,在綁定的郵件中查收自己的賬號和默認(rèn)密碼。并如下圖登陸官網(wǎng)(24小時內(nèi)首次登陸方可激活,登錄后可修改密碼),并點(diǎn)擊“Login”。
然后就可以參加比賽啦!選手需要在比賽開放期間進(jìn)入競賽頁面參與比賽。如下圖所示,點(diǎn)擊“Start the Contest!”鍵即可開始比賽。選手的比賽用時就會立即倒計(jì)時,且無法暫停。
進(jìn)入題目后,點(diǎn)擊紅框處選擇Chinese(zh),可以切換題目語言為中文:
完成之后就可以提交啦!比賽時需要按要求在自己的編程環(huán)境(例如DEV-C++)中完成題目,并提交cpp文件。
比賽會在時限過后自動結(jié)束(如已經(jīng)獲得滿分,則可以手動提前結(jié)束),只需在比賽結(jié)束前確保提交過已經(jīng)完成的題目即可。
USACO競賽有4個級別,銅級,銀級,金級,白金級。每個級別代表不同的編程技能水平。新注冊的選手從銅級開始,在規(guī)定的時間內(nèi)完成3道題目,如果過關(guān),可晉級到更高級別。
面向?qū)W生:首次參加USACO競賽學(xué)生皆為青銅級。
難度等級:適用于剛學(xué)會編程的學(xué)生,但是除了排序和二進(jìn)制搜索之類的基本概念之外,沒有任何算法方面的培訓(xùn)。
難度等級:需要基本的問題解決能力和簡單算法(例如:貪心算法,遞歸搜索等),還需了解基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)。從白銀級開始,選手需要尋找更好的算法才能使程序在規(guī)定時間內(nèi)跑完。
難度等級:需要有一定的算法基礎(chǔ),理解一些抽象的方法(例:最短路徑,動態(tài)規(guī)劃),并且對數(shù)據(jù)結(jié)構(gòu)有比較深的了解。
難度等級:需要有很高的編程基礎(chǔ),對算法有深入的了解。部分比賽問題最后的優(yōu)化方案,可能不只一個,得出的答案也不只一個。
準(zhǔn)備一些模板,用于復(fù)制/粘貼,以讀取輸入和寫入輸出。準(zhǔn)備一些常用算法的模板作為參考。使用你自己的模板,避免抄襲別人的模板! 在點(diǎn)擊開始按鈕之前,將 您的IDE或編程環(huán)境設(shè)置好。
在比賽中,程序可能會崩潰,產(chǎn)生錯誤的輸出,因此,學(xué)生熟悉調(diào)試界面是至關(guān)重要的。由于錯誤往往是編譯錯誤、崩潰、超時或錯誤的答案,學(xué)生可以使用這個大綱來開始調(diào)試。
如果學(xué)生找不到哪一行不能編譯,試著使用二進(jìn)制搜索方法刪除代碼部分。使用具有自動導(dǎo)入庫的IDE,并熟悉自動完成的鍵盤快捷鍵。檢查異常類型(空指針、除以0、無限遞歸、內(nèi)存不足?)如果沒有異常,嘗試上傳避免可能的錯誤的代碼,并使用二進(jìn)制搜索方法找出可能崩潰的代碼區(qū)域。
注意數(shù)組實(shí)例化的問題。盡量在程序開始時就把所有東西實(shí)例化。試著計(jì)算運(yùn)行了多少操作。如果有必要,可以使用變量。嘗試用標(biāo)準(zhǔn)的預(yù)分配數(shù)組代替List或Map這樣的數(shù)據(jù)結(jié)構(gòu)。對于更高層次的問題,檢查是否可以進(jìn)行動態(tài)編程或記憶化。
檢查你的代碼與正確答案之間的間距和格式是否一致。檢查整數(shù)溢出的情況。檢查是否有NaN或未定義的整數(shù)運(yùn)算。如果有時間,試著做你自己的自定義輸入,并將輸出與你的預(yù)期輸出進(jìn)行比較。你甚至可以比較作為中間計(jì)算的具體數(shù)值。
USACO重點(diǎn)考察學(xué)生的算法分析能力和代碼編寫能力。不管考察哪個能力,學(xué)生都要靠大量做題、經(jīng)驗(yàn)總結(jié)、舉一反三等等專業(yè)訓(xùn)練來達(dá)到。所以參加USACO競賽,有針對性的刷題訓(xùn)練、USACO競賽豐富的導(dǎo)師指導(dǎo)是非常重要的!
課程名稱 |
班級人數(shù) |
課時數(shù) |
USACO競賽銅升銀 |
3-6人 |
30H |
USACO競賽銀升金 |
3-6人 |
30H |
USACO競賽金升白金 |
3-6人 |
60H |
USACO競賽培訓(xùn)全程班 |
3-6人 |
60H |
微信咨詢
支付二維碼