999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

AGM—ICPC訓練方法與競賽策略

2014-06-25 01:07:13王春平王衛紅韓姍姍李曲方趙林
計算機教育 2014年6期
關鍵詞:訓練方法

王春平 王衛紅 韓姍姍 李曲 方趙林

摘要:ACM-ICPC競賽規模日趨增大,為了提高訓練效率和競賽成績,文章依據ACM-ICPC的知識范疇,提出程序設計的訓練方法和相應的競賽策略,引導和增強學生的程序設計能力,提出在比賽中采取正確的組隊策略、團隊合作策略和答題策略。

關鍵詞:ACM-ICPC;程序設計;訓練方法;競賽策略

0 引言

ACM國際大學生程序設計競賽(ACM Inter-national Collegiate Programming Contest,ICPC)是由美國計算機協會(Association for ComputingMachinery,ACM)主辦的一項旨在展示大學生創新能力、分析和解決問題能力、在壓力下編寫程序能力和團隊精神的年度競賽,迄今為止已經舉辦了37屆。大陸高校從1996年開始舉辦比賽,目前中國賽區擁有5個站點,參賽隊伍穩定在150支以上。隨著國內高校參賽規模的增大,獲取好成績的難度也越來越大。

1 知識范疇與訓練方法

程序設計是計算機科學領域的基礎技術,涉及幾乎所有的計算機基礎課程。要提高學生的程序設計與應用能力,教師必須有規范的訓練方法,并加以正確引導,才能達到學以致用的目的。計算機程序作為一種管理和數據分析手段,已經滲透到幾乎所有的行業,而ACM-ICPC的競賽題目有很大一部分是來自計算機實踐的抽象,要想很好地解決這些問題,學生必須掌握相關知識點,擁有熟練的編程調試技術以及頑強不屈的心理素質。

1.1 知識范疇和基礎編程

ICPC競賽涵蓋的知識面非常廣泛,主要由以下幾部分構成。

(1)數學基礎:算法復雜性分析方法、概率論、代數學、組合數學、博弈論、數論等。

(2)數據結構:基礎數據結構、集合、排序算法、堆、樹等。

(3)圖論:圖的分類與遍歷、二分圖、網絡流等。

(4)計算幾何:向量、點與多邊形、平面交等。

由于ICPC只是作為培養學生編程興趣的一種手段,學生在有限時間里要全面學習掌握這些知識點非常困難,因此,知識點的學習可根據組隊有針對性地進行,盡量使同一個參賽隊伍中的隊員之間相互補充。例如,隊員1側重學習計算幾何,隊員2和隊員3則可分別偏重學習數學知識和數據結構,這使得組隊可能在短時間內獲得更好的比賽成績。從長遠來看,要想成為一名優秀的參賽隊員,學生須具備“一專多能”的能力,“一專”是精通至少一種類型的不同難度題目,“多能”是指能解決其他類型的一般題目,這樣的隊員所組成的參賽隊伍往往會有1+1+1>3的比賽效果。

在編程技術方面,ICPC競賽主要采用2種程序設計語言:C/C++和Java語言。C/C++語言作為傳統的編程語言,在競賽中擁有很多優勢,而Java語言也有自己的特點。Python和C#等語言近期也逐漸被各競賽系統所支持。不論采用哪一種語言,可分為以下3個方面來訓練:①基礎語法訓練:任何微小的語法和編譯錯誤在賽場上都是一種損失;②STL技術:至少熟練掌握一種語言如C++的STL(Standard Template Library)模板;③基本題型訓練。這些基礎的編程訓練都將在賽場上減少不必要的罰時,可以為各組爭取更好的結果。

1.2 求解方法分類

ICPC競賽同其他算法競賽一樣,訓練時需要對求解方法有針對性的訓練。求解方法的主要分類包括:窮舉法、分治方法、動態規劃法、貪心法、回溯法、分支限界法和線性規劃法。

窮舉法又稱為暴力法(Brute Force),是使用比較普通也是最樸素的解題方法,但是時間復雜度非常高,實際解題時往往需要同其他方法進行結合。

分治法是指將難以直接解決的大規模問題分割成一些規模較小的相同問題,以各個擊破、分而治之,比較典型的問題有全排列問題、漢諾塔問題等。

動態規劃法指解題過程中的每次決策依賴于當前狀態,又隨即引起狀態的轉移。一個決策序列就是在變化的狀態中產生出來的,這種多階段最優化決策解決問題的過程就稱為動態規劃。動態規劃法一般采用自底向上的求解步驟,學生較難掌握。使用動態規劃法求解的典型問題有0-1背包問題、矩陣連乘問題、流水作業調度和最優二叉搜索樹等。

貪心法指在對問題求解時,總是做出在當前看來是最好的選擇。貪心法的求解步驟與動態規劃法相反,通常以自頂向下的方式進行,以迭代的方式做出相繼的貪心選擇,每做一次貪心選擇就將所求問題簡化為規模更小的子問題。比較典型的問題有:散裝背包問題、最優裝載問題、哈夫曼編碼問題、最小生成樹和多機調度問題等。

回溯法則是在解空間樹上采用試錯思想,嘗試分步解決一個問題。這種方法實際上是暴力法的一種變形,最壞情況是會導致指數時間的計算復雜度。比較典型的問題有:圖的m著色問題、旅行售貨員問題和最大團問題等。

分支限界法類似于回溯法,也是一種在問題的解空間樹上搜索問題解的算法,但回溯法的求解目標是找出解空間樹中滿足約束條件的所有解,而分支限界法的求解目標則是找出滿足約束條件的一個解,或是在某種意義下的最優解。典型的問題包括:布線問題、電路板排版問題和批處理作業調度問題等。

線性規劃法則是最優化問題中的重要領域之一,指在線性等式或不等式的約束條件下,求解線性目標函數的最大值或最小值的方法。其中目標函數是決策者要求達到目標的數學表達式,用一個極大或極小值表示。約束條件是指實現目標的能力資源和內部條件的限制因素,用一組等式或不等式來表示。比較典型的問題有:最大網絡流、最小費用流和網絡單純形問題等。

作為競賽選手,掌握這些方法并能夠在實際解題中進行應用是非常必要的,因此通常的競賽題目解題方法都在此范圍內。另外,筆者沒有將搜索排序作為解題方法的基本要求,但實際編程中很少有需要自己寫搜索排序算法的,因為一般在編程語言中已經有相應的庫函數提供。在初期訓練時,動態規劃和線性規劃應作為訓練重點,也是因為此類方法的應用較難,雖然能夠掌握方法的原理,但是需要選手具備具體問題具體分析的能力,而其他方法則相對要簡單一些。在訓練后期,特別是臨近比賽時,要盡量避免做陳題,應該多嘗試訓練新題以增強臨場應變能力。endprint

1.3 心理訓練

ACM-ICPC競賽的時間長達5小時,題目數量一般在10~12道之間,可以說,這對隊員的體力和腦力都是巨大的考驗。實際比賽氣氛非常緊張,如在答題的過程中卡題,隊員較易出現心理波動,導致發揮失常,因此,注重平時的心理承受能力訓練是非常有必要的。當然,心理承受能力的培養并非一朝一夕可以完成,而是一項長期細致的工作。為了增強激烈競爭下的抗壓能力,教師可以在平時訓練中有意識地設置一些需隊員努力才可以完成的難題,并授予獎品或者懲罰,讓隊員“跳一跳來摘果子”,把學到的對付困難、挫折的方法應用到實際競賽中去,培養其心理承受能力。

在心理訓練層面,一個良好的訓練氛圍也是不可缺少的。團隊中除了培養隊員平日訓練的默契,也需要隊員之間的相互鼓勵。但是,在比賽中還有一種情形,就是多次提交后仍不能被判定正確,此時該題如同雞肋,耗在此題上很容易造成戰機的延誤.這時需要一個具備心理素質強、有大局掌控力的隊長命令大家果斷放棄該題。

2 ACM-ICPC競賽策略

ACM-ICPC是團隊競賽,因此在組隊、團隊合作和答題順序上都要有一定的策略。每個ICPC參賽隊由3名隊員組成,這種奇數規定不是偶然的,而是ACM-ICPC主辦方長期經驗積累的結果。在1993年以前,參賽隊是由4名隊員組成,經過各主辦方的長期觀察,發現這樣很容易導致隊伍分成2個小組,其中一個小組(2名隊員)使用電腦輸入程序,另外一個小組則在紙上討論下一題的求解,這樣的情形是與競賽設計者的初衷背道而馳的,因此ACM-ICPC委員會將成員縮減為3個,這樣團隊既可作為一個整體,也可以單獨行動或者輪換組合。

組隊策略一般有3種:強強搭配型、互補型和梯隊型。強強搭配型是各高校為了取得最好成績的常見組合,一般3名隊員都是在該校排名靠前的隊員,一般高校常用這種集中最優力量的組合來沖擊全球總決賽。互補型通常又分為兩種:技術互補型和能力互補型。技術互補型的隊伍分訓由英文閱讀能力強、編碼能力強和邏輯能力強的3名隊員構成,這樣可以在技術上相互補充。能力互補型則由知識面不同的隊員構成,例如,隊員1擅長數據結構,隊員2擅長計算幾何,隊員3擅長圖論等。梯隊型則是為了完成傳幫帶的梯隊建設需要,讓老隊員幫助新隊員快速成長。

雖然目前在程序設計訓練和競賽中女隊員所占比例非常少,但一個訓練團隊或隊伍中如果有女隊員的存在,往往會最大限度地激發男隊員的學習激情和潛力,最近幾年大陸世界總決賽參賽隊都有這樣的例證。

在團隊合作策略上,一般分為3種:完全配合型、獨立型和配對型。完全配合型指在全場比賽時間中,整個隊伍在同一時刻只處理一道題,三名隊員一起讀題,編碼直至題目被判定正確。獨立型則通常出現在強強搭配的隊伍中,三名隊員能力都很強,一般在開場時就分配好各自任務,然后分頭解題,這種策略是奔著最好成績去的,但存在著集體卡題的危險。配對型則是兩名隊員討論一個題目的確定解法后,剩余一名隊員負責編碼實現,而配對兩名隊員接著討論下一個題目,如此循環配合;當然實際操作時,也可進行配對切換。

在答題策略上,一般有順序答題、從易到難、中檔一容易一難等3種答題策略。順序答題是按照題目的順序答題,但現在題目的難易程度都是打亂的。從易到難則是比較容易接受的答題順序,但是實際競賽中題目閱讀實際上比較費時間,有時候也很難確定每道題的難易對比從中檔到容易再到難的答題順序則是一種折衷策略,如果發現有比較容易的題目,則可以留著最后來解決。當然,實際競賽出現的情況是多種多樣的,這也需要隊員隨機應變。

3 結語

ACM-ICPC的訓練方法和競賽策略可作為程序設計類課程學生培養的參考。當然,培養出色的程序設計人才是一項長期且艱苦的任務,作為教練,不僅需要制定完備的訓練計劃和競賽策略,還承擔著“學生導師”的角色,只有深入了解隊員的學習生活狀況,去幫助他們解決所面臨的各種困難,才能培養他們對程序設計的“感情”,使得他們體會到編程的樂趣并“愛上”編程,從而最終成為優秀的編程人才,正所謂“知之者不如好之者,好之者不如樂之者”。

參考文獻:

[1]姚翠莉,劉一瑋,金博.ACM/ICPC競賽人才培養模式的研究與實踐[J].內蒙古師范大學學報:教育科學版,2012,25(3):141-144.

[2]俞勇.ACM國際大學生程序設計競賽知識與入門[M].北京:清華大學出版社,2012:7.

[3]王曉東.計算機算法分析與設計[M].北京:電子工業出版社,2011:5.

[4]夏鴻斌.競賽教育與信息技術創新人才培養模式探討[J].軟件導刊,2009,8(10):182-183.

[5]Andrew T, Chris H.Programming contest strategy[J].Computers&Education,2008(50):825-830.

(編輯:孫怡銘)endprint

猜你喜歡
訓練方法
鋼琴演奏技巧對于音樂表現的重要作用及訓練方法研究
河北畫報(2020年10期)2020-11-26 07:21:24
談高中數學習題訓練方法與答題技巧
甘肅教育(2020年18期)2020-10-28 09:07:12
單板U型場地滑雪關鍵技術動作及訓練方法
冰雪運動(2019年3期)2019-08-23 08:10:32
高校乒乓球教學中的心理訓練方法
活力(2019年21期)2019-04-01 12:18:52
壁球反手擊球技術及其訓練方法
跳遠運動員專項力量訓練方法
簡論1min跳繩訓練方法
運動(2016年7期)2016-12-01 06:34:36
乒乓球正手前沖弧圈球技術的訓練方法研究
運動(2016年7期)2016-12-01 06:34:12
民航飛行大學生體能差異性訓練方法的探究——以濱州學院為例
運動(2016年6期)2016-12-01 06:33:45
鋼琴視奏訓練方法探析
樂府新聲(2016年4期)2016-06-22 13:03:05
主站蜘蛛池模板: 蝴蝶伊人久久中文娱乐网| 欧美成人综合视频| 国产综合色在线视频播放线视| 欧美亚洲激情| 狠狠色综合网| 日韩精品一区二区三区大桥未久| a天堂视频在线| 国产在线自乱拍播放| 伊人无码视屏| 久久无码av三级| 四虎精品黑人视频| 91青青草视频| 日韩精品欧美国产在线| 久久久久久国产精品mv| 视频二区欧美| 国产9191精品免费观看| 亚洲综合色在线| 久久亚洲天堂| 久久精品国产91久久综合麻豆自制| 免费在线播放毛片| 久久综合亚洲鲁鲁九月天| 啪啪永久免费av| 中文字幕第1页在线播| 亚洲精品中文字幕无乱码| 久久久亚洲色| 国产麻豆91网在线看| 国产成人高清精品免费| 午夜不卡视频| 亚洲中文字幕国产av| 怡红院美国分院一区二区| 国产在线观看91精品| 国内精品一区二区在线观看 | 国产熟女一级毛片| 久久久久国产精品熟女影院| 亚洲成在线观看| 国产特级毛片| 国产美女视频黄a视频全免费网站| 国产色婷婷| 久久成人免费| 一级一级一片免费| 久操中文在线| 老熟妇喷水一区二区三区| 欧美精品另类| 亚洲第一黄色网| 在线观看精品自拍视频| 欧美成人怡春院在线激情| 国产女人水多毛片18| 欧美一级在线看| 午夜国产理论| 91精品啪在线观看国产60岁| 久久香蕉国产线看精品| 丝袜亚洲综合| 国产精品99一区不卡| 伊人久久福利中文字幕| 在线观看无码a∨| 91九色国产在线| 91系列在线观看| 麻豆精品视频在线原创| 久夜色精品国产噜噜| 日韩在线观看网站| 试看120秒男女啪啪免费| 亚洲精品手机在线| 亚洲色图欧美视频| 国产精品13页| 毛片最新网址| 免费不卡视频| 国产亚洲精品91| 青青青视频蜜桃一区二区| 国产区在线看| 一边摸一边做爽的视频17国产| 日本一区二区三区精品国产| 超碰精品无码一区二区| 成人午夜网址| 国内精自线i品一区202| 国产91麻豆免费观看| 精品自窥自偷在线看| 日本中文字幕久久网站| 国产特一级毛片| 青草视频免费在线观看| 欧类av怡春院| 97免费在线观看视频| 欧美一区二区人人喊爽|