下面是我看到的乙個神牛對acm的總結,借鑑一下。
先個人簡述下:07級本科,軟體學院,09-10年創新中心acm組組長。acm/icpc亞洲區3銀1銅,東北地區2次一等獎,遼寧省2次一等獎。3年國家獎學金,2023年9月至2023年5月在微軟亞洲研究院(msra)實習。
以下是本人在大學期間參加acm/icpc的總結,以及相關的經驗教訓。
首先,先說說acm對大學以及未來發展所帶來的利弊。 利:
毫無疑問,你的程式設計能力(注意這裡不是軟體開發能力)會得到大幅度地提公升。acm比賽注重短時間地寫出正確的**,是完全正確的**。在acm比賽中,只有對的**和錯的**(在現實生活中可不一定是這樣的),沒有一本正確的**。
你的演算法能力會得到很好的鍛鍊。在以前的教科書裡,演算法是計算機學科的核心。雖然現在的觀念淡化了演算法的重要性,更多地注重軟體的架構和利益等方面,但是基本的演算法學習還是必不可少的。紮實的演算法和數學功底是計算機研究的必備條件,而這些正是acm競賽所培養的。
acm競賽講究三人組隊配合,這點很符合現實中的團隊合作,如何作為隊長合理管理團隊,如何作為隊員提高配合效率都是acm比賽教會你的。
由於acm競賽現場賽在各地舉辦,比賽的同時也可以領略當年的風土人情。本人自從參加acm競賽,從南到北走過了不少城市,東三省的主要幾個城市都去過不止一遍。在比賽的同時,也結交了許多全國各地的程式設計愛好者,增長了見識。 弊:
正如上文所說,acm競賽追求完全正確的演算法和**,這與現實生活中的軟體開發和計算機研究有所不同。軟體開發很難做到完全沒有bug,而計算機研究更是在追求不斷智慧型的路上永無止境。同時,acm競賽只要求**的正確性,沒有涉及**的風格以及相應的文件配套,這會對以後的軟體開發留下不好的習慣。(當然,以上都是觀念及習慣的改變,如果想改,完全是可以改好的。)
acm競賽需要長時間的積累,要想出好成績基本需要花費大學的大量時間,許多acmer都是成天成天地刷題,熬夜參加練習賽。由於長時間的接觸電腦,導致身體健康情況,人際交往能力等都會受到一定的影響。
acm的訓練及比賽都是個腦力與體力同時承受煎熬的過程。經常一道題目就會花費你1天乃至數天的精力,一場5個小時的比賽就像一場馬拉松,誰能堅持到最後,誰就是贏家。這裡面的艱辛,只有正在投身其中才能體會。
acm不是人人都適合,恰恰相反,它只適合少數人。有人說它是智者的遊戲,我認為是智者和勤奮人的遊戲。
你是否喜歡數學?注意,acm高階別比賽的較量是數學和思維的比拼,程式設計只是乙個基本能力。
你是否喜歡思考,喜歡解決難題,喜歡被難題折磨地痛不欲生的感覺?如果你喜歡,acm就是你的天堂,否則就是地獄。
你是否喜歡程式設計,你是否喜歡「破壞」鍵盤?acm講究高效率的程式設計,賽場上隨處可見各種瘋狂的「打字機」。
如果以上你都喜歡,最後問自己乙個問題,你能堅持嗎?每年acm組招新都能招到超過50人,但最後剩下的只有10人左右,大部分人都是以為acm很好玩,還能得獎就報名了,結果發現不是這麼回事。acm是乙個門檻很高的比賽,不是想隨便玩就能玩的。
最後,根據我個人的經歷,談談acm如何訓練及比賽。
),由於它是國內最老的oj,蘊含著前輩的心血和智慧型,如果遇到問題,比較容易找到人解決。poj上水題很多,找200水題熟悉下即可。
不少人會熱衷於水題,並且痴迷於poj上的題數及排名,如果你只想通過acm來提高程式設計能力,那麼沒問題,刷水題到500以上也並非難事。如果你想進一步提高自己的acm水平,水題刷到300以上就一定要打住,開始系統地學習演算法。
演算法的列表及相應的題目分類,網上隨處能搜到。同時,我極力推薦在學演算法刷題的同時,寫寫相應的解題報告。解出題目是乙個層次,能夠寫出解題報告並讓別人看懂說明你對相應的演算法有了更深的理解。無論是給自己看,還是貼在網上給別人看,都是值得推崇的。同時,寫解題報告也可以推動acmer之間的相互交流,共同進步。我在acm訓練期間經常在個人空間裡寫一些解題報告,其中有關幾篇關於資料結構和數學的文章值得初學者借鑑(
). 當你對大部分的演算法有所了解後,就可以參加比賽了。參加比賽前的乙個重要準備就是整理模板庫,即對一些常用演算法的**進行整理。acm比賽是允許帶任何紙質材料,包括書。所以,整理一些基礎的**還是十分有用的。但是,不能過分依賴模板,越是高階的比賽,模板的重要性就越低。
acm比賽是個變化莫測的比賽,很多初學者都會糾結於一道題目無法自拔,直至比賽結束後悔莫及。如何調節心理,如何在比賽中指定相應的策略,如何避免非技術因素導致的失敗,這些只有通過不斷比賽來積累。而這些都是許多acmer無法逾越的一道屏障,成為他們心中永遠的傷痕(暗指本人》.<) 。
最後的最後,引用幾乎每個退役的acmer都會說的話:acm is just a game. 如果你喜歡,就享受它,如果不喜歡,就遠離它。
煙台大學acm暑期集訓總結
從7月15號暑假開始,我們煙大的acm暑期集訓也就算是正式開始了。我們學校的學習環境還是相當不錯的,我們在裡面可以安靜的做題,以前我們集訓都是一邊上課一邊做題,現在終於可以一整天的在實驗室裡做題。不過我感覺我乙個暑假的訓練還是比較失敗的,可能因為從青島回來感覺比賽已經差不多結束了,所以壓力小了很多。...
關於ACM的總結
看了不少大神的退役帖,今天終於要本弱裝一波逼祭奠一下我關於acm的回憶。從大二上開始接觸到大三下結束,接近兩年的時間,對於大神們來說兩年的確算不上時間,然而對於本弱來說就是大學的一半時光。大一的懵懂浪費了我太多的時間,甚至現在都在後悔為什麼不是在大一的時候才知道acm並參與到其中。其實對我現在來說大...
大學ACM第二週心得
小小分個類 這裡推薦這篇部落格 例 受歡迎的牛 由題可得,受歡迎的奶牛只有可能是圖中唯一的出度為零的強連通分量中的所有奶牛,所以若出現兩個以上出度為0的強連通分量則不存在明星奶牛,因為那幾個出度為零的分量的愛慕無法傳遞出去。那唯一的分量能受到其他分量的愛慕同時在分量內相互傳遞,所以該分量中的所有奶牛...