趙磊等
摘要:針對(duì)普通本科院校ACM/ICPC教學(xué)中存在的問(wèn)題進(jìn)行探討,提出改進(jìn)競(jìng)賽教學(xué)模式,建立完善的培訓(xùn)體系,穩(wěn)定指導(dǎo)教師隊(duì)伍,提高團(tuán)隊(duì)配合效果。
關(guān)鍵詞:ACM/ICPC;普通本科;教學(xué)模式;團(tuán)隊(duì)配合
中圖分類(lèi)號(hào):G64 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)04-0129-02
Abstract: ACM/ICPC is an international collegiate programming contest held annually by ACM. This competition is the oldest international programming contest and has most influential on the international undergraduates. This paper discusses the problems existing in ACM/ICPC teaching of ordinary undergraduate university, puts forward point of view as improving competition teaching mode, establish the perfect training system, stable teachers team, improve the team cooperation effect.
Key words: ACM/ICPC; ergraduate; teaching model; team cooperation
1 ACM/ICPC介紹
ACM國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽(ACM International Collegiate Programming Contest,簡(jiǎn)稱(chēng)ACM/ICPC)是全球規(guī)模最大,最有影響力的大學(xué)生程序設(shè)計(jì)競(jìng)賽。其目的旨在使大學(xué)生運(yùn)用計(jì)算機(jī)來(lái)充分展示自己分析問(wèn)題和解決問(wèn)題的能力。它始于1970年,到2013年為止已經(jīng)舉辦了37屆。這項(xiàng)國(guó)際頂級(jí)賽事是大學(xué)生智力與計(jì)算機(jī)解題能力的競(jìng)賽,是大學(xué)生展示水平與才華的大舞臺(tái),是全球高校計(jì)算機(jī)教育成果的直接體現(xiàn)。該項(xiàng)競(jìng)賽分為區(qū)域賽和世界總決賽,各大洲的區(qū)域賽安排在上一年的9月-12月進(jìn)行,第一名自動(dòng)獲得參加世界決賽的資格,世界總決賽安排在每年的3月-5月舉行[1]。
ACM/ICPC要求以團(tuán)隊(duì)的形式參賽,每個(gè)隊(duì)伍由3名隊(duì)員組成。每隊(duì)使用一臺(tái)計(jì)算機(jī),要求選手在全封閉的環(huán)境內(nèi)(不能有任何通訊設(shè)備,可以攜帶任何紙質(zhì)資料)連續(xù)5個(gè)小時(shí)對(duì)8-11個(gè)問(wèn)題進(jìn)行解答。競(jìng)賽采用英文命題,題目涉及面非常廣。需要參賽學(xué)生具有扎實(shí)的基本功、良好的分析問(wèn)題的能力、較好的團(tuán)隊(duì)協(xié)作能力和壓力下編寫(xiě)程序的能力。該競(jìng)賽為學(xué)生提供了一個(gè)學(xué)習(xí)和使用程序設(shè)計(jì)語(yǔ)言和算法的完整實(shí)踐模式,讓學(xué)生以精通編程為榮,形成一個(gè)積極向上的學(xué)習(xí)氛圍。
對(duì)于師資和生源都不如重點(diǎn)本科院校的普通本科院校,在ACM/ICPC競(jìng)賽中處于劣勢(shì),“通過(guò)怎樣的競(jìng)賽教學(xué)來(lái)盡量彌補(bǔ)普通本科院校的不足,從而能在ACM/ICPC競(jìng)賽中取得理想成績(jī)”是一個(gè)值得深入探討的問(wèn)題。該文結(jié)合本校的經(jīng)驗(yàn)和教訓(xùn),對(duì)ACM/ICPC競(jìng)賽教學(xué)進(jìn)行探討。
2 普通本科院校在ACM/ICPC競(jìng)賽教學(xué)中存在的問(wèn)題
2.1 普通本科院校不能照搬重點(diǎn)本科院校的教學(xué)模式
普通本科院校與重點(diǎn)本科院校的基礎(chǔ)條件不同,重點(diǎn)本科院校師資的個(gè)人能力和生源的個(gè)人素質(zhì)都較高,教師按日常教學(xué)模式教學(xué)——老師傳授什么學(xué)生就接受什么的教學(xué)方式,學(xué)生也能接受和消化,而普通本科院校則不行。因?yàn)樵谶@種教學(xué)模式中學(xué)生往往處于被動(dòng)學(xué)習(xí)狀態(tài),沒(méi)有充分獨(dú)立分析和思考的時(shí)間,加上競(jìng)賽教學(xué)內(nèi)容本身比日常教學(xué)內(nèi)容要難很多,學(xué)生接受能力相對(duì)較差。所以這種教學(xué)模式運(yùn)用在競(jìng)賽培訓(xùn)中直接導(dǎo)致學(xué)生的學(xué)習(xí)效果差,對(duì)知識(shí)點(diǎn)的理解也就是在老師講的那一刻,老師講完后就變得模糊甚至忘記。同時(shí)競(jìng)賽教學(xué)的實(shí)踐環(huán)節(jié)主要以學(xué)生自己利用課余時(shí)間完成為主,沒(méi)有相應(yīng)的實(shí)踐教材,老師只提供問(wèn)題和題解。學(xué)生學(xué)習(xí)全憑興趣和自覺(jué)性,一旦題目稍有變化,就不知該如何解答,導(dǎo)致學(xué)習(xí)積極性下降,甚至放棄。長(zhǎng)期以往,學(xué)生對(duì)知識(shí)點(diǎn)的理解抽象,解決問(wèn)題能力低下,在競(jìng)賽中很難取得理想成績(jī)。
2.2 競(jìng)賽教學(xué)內(nèi)容不規(guī)范
ACM/ICPC競(jìng)賽內(nèi)容涉及面廣,沒(méi)有統(tǒng)一的標(biāo)準(zhǔn)教材可供參考。雖然現(xiàn)在市面上有一些ACM/ICPC的參考教材,但是沒(méi)有整體性和層次性,學(xué)生學(xué)習(xí)起來(lái)非常吃力,需要指導(dǎo)教師重新組織和安排。
2.3競(jìng)賽成績(jī)不穩(wěn)定
有一些院校依靠某一屆學(xué)生取得了好成績(jī),而后成績(jī)大幅下滑,很不穩(wěn)定。主要原因在于沒(méi)有形成完善的培訓(xùn)體系,在沒(méi)有完善的培訓(xùn)體系下成績(jī)的好壞很大程度依賴(lài)學(xué)生的個(gè)人素質(zhì)和努力程度,而學(xué)生的素質(zhì)和努力程度受到各種因素的影響。
2.4 競(jìng)賽指導(dǎo)教師能力不足且更換頻繁
一般在指導(dǎo)競(jìng)賽之前,指導(dǎo)老師基本上沒(méi)有任何ACM/ICPC競(jìng)賽的經(jīng)歷,需要從頭開(kāi)始。而指導(dǎo)教師們本身還面臨教學(xué)和科研的工作上的壓力和照顧家庭等生活上的壓力,沒(méi)有充足時(shí)間來(lái)學(xué)習(xí)競(jìng)賽涉及的知識(shí),教學(xué)的效果并不理想。所以形成了很多指導(dǎo)教師在指導(dǎo)了幾年之后便選擇退出,前面知識(shí)和經(jīng)驗(yàn)積累都白費(fèi)的惡性循環(huán)。
2.5競(jìng)賽團(tuán)隊(duì)配合不理想
ACM/ICPC競(jìng)賽是3個(gè)隊(duì)員組成團(tuán)隊(duì)的競(jìng)賽,但是在競(jìng)賽教學(xué)中指導(dǎo)老師往往只注重學(xué)生個(gè)人能力的培養(yǎng),忽視或不重視團(tuán)隊(duì)配合的教學(xué)。從而造成在競(jìng)賽中學(xué)生還處于單打獨(dú)斗的局面,相互之間缺少交流,甚至不交流,形成1+1+1<3的局面。
因此,針對(duì)普通本科院校在競(jìng)賽教學(xué)中存在的以上問(wèn)題,如何改進(jìn)競(jìng)賽教學(xué)模式,如何建立完善的培訓(xùn)體系,如何穩(wěn)定指導(dǎo)教師隊(duì)伍,如何提高團(tuán)隊(duì)配合效果,進(jìn)而提高競(jìng)賽成績(jī)這些問(wèn)題值得探討。
3 普通本科院校ACM/ICPC教學(xué)的探討
3.1改變?nèi)粘=虒W(xué)模式,突出任務(wù)驅(qū)動(dòng)式的教學(xué)
學(xué)生有學(xué)習(xí)知識(shí)的內(nèi)在需要,同時(shí)又有在競(jìng)賽中取得理想成績(jī)的目標(biāo),其實(shí)有很強(qiáng)的學(xué)習(xí)動(dòng)力。競(jìng)賽教學(xué)的根本目標(biāo)是激發(fā)學(xué)生自身的這種學(xué)習(xí)興趣和學(xué)習(xí)需要[2]。在本校的競(jìng)賽教學(xué)中,我們將學(xué)生聚集起來(lái),為學(xué)生提供一個(gè)競(jìng)賽測(cè)評(píng)系統(tǒng),教師先跟學(xué)生交流,主要由學(xué)生自己決定學(xué)什么、學(xué)多少、怎么學(xué)。教師根據(jù)經(jīng)驗(yàn)負(fù)責(zé)在恰當(dāng)?shù)臅r(shí)候?yàn)閷W(xué)生進(jìn)行基礎(chǔ)知識(shí)、相關(guān)數(shù)據(jù)結(jié)構(gòu)和算法的集中培訓(xùn),讓學(xué)生自己設(shè)定學(xué)習(xí)目標(biāo),分析學(xué)習(xí)內(nèi)容,制定學(xué)習(xí)計(jì)劃,獲得學(xué)習(xí)資源,管理學(xué)習(xí)過(guò)程,并在學(xué)生有疑問(wèn)時(shí)進(jìn)行解答。這樣,學(xué)生的主觀能動(dòng)性被極大地發(fā)揮出來(lái),為了能夠解決競(jìng)賽中的難題,隊(duì)員們常常采取多樣的學(xué)習(xí)方式,可旁聽(tīng)高年級(jí)的相關(guān)課程,可利用網(wǎng)絡(luò)尋求直接的經(jīng)驗(yàn)總結(jié),可鉆研參考書(shū)目獲得理論知識(shí)。同時(shí),學(xué)生之間也可以相互競(jìng)賽。當(dāng)有的學(xué)生在一個(gè)假期內(nèi)做出上百道題而有的學(xué)生只做出幾十道題時(shí),危機(jī)意識(shí)會(huì)更加促進(jìn)學(xué)生的學(xué)習(xí)和進(jìn)步。通過(guò)一個(gè)假期的強(qiáng)化訓(xùn)練,某些學(xué)生會(huì)意識(shí)到平常需要一年或幾年學(xué)習(xí)的內(nèi)容在兩個(gè)月內(nèi)就掌握了。
3.2 完善培訓(xùn)體系,規(guī)范競(jìng)賽課程,合理安排教學(xué)內(nèi)容
ACM/ICPC競(jìng)賽內(nèi)容沒(méi)有固定范圍,一方面要求學(xué)生熟練掌握計(jì)算機(jī)課程中的程序設(shè)計(jì)、數(shù)據(jù)結(jié)構(gòu)、算法分析等知識(shí),還要求學(xué)生有較高的邏輯思維能力,扎實(shí)的數(shù)學(xué)功底。競(jìng)賽還涉及到數(shù)論、離散數(shù)學(xué)、組合數(shù)學(xué)、計(jì)算幾何等方面的知識(shí)[3]。要讓學(xué)生在兩三年左右的時(shí)間熟練掌握這些知識(shí)需要規(guī)范競(jìng)賽課程,合理地安排競(jìng)賽教學(xué)內(nèi)容。
以我校為例,ACM/ICPC競(jìng)賽培訓(xùn)班下設(shè)三個(gè)班,分別為基礎(chǔ)班、中級(jí)班和高級(jí)班?;A(chǔ)班針對(duì)剛進(jìn)校的新生,新生一般基礎(chǔ)都比較薄弱,在中學(xué)很少涉及上述知識(shí)?;A(chǔ)班主要使學(xué)生熟練掌握一門(mén)編程語(yǔ)言,并學(xué)習(xí)一些數(shù)學(xué)知識(shí)、簡(jiǎn)單算法、模擬和標(biāo)準(zhǔn)模版庫(kù)(STL),通過(guò)大量的習(xí)題訓(xùn)練積累和提煉出編程技巧,提高學(xué)生自身編寫(xiě)代碼、調(diào)試程序的能力。中級(jí)班以數(shù)據(jù)結(jié)構(gòu)、高級(jí)算法、數(shù)論、簡(jiǎn)單計(jì)算幾何為基礎(chǔ),強(qiáng)化解題和編程能力,擴(kuò)展學(xué)生在動(dòng)態(tài)規(guī)范、搜索、分治等計(jì)算機(jī)領(lǐng)域算法知識(shí)和博弈、組合計(jì)數(shù)等組合數(shù)學(xué)知識(shí)。高級(jí)班主要學(xué)習(xí)線段樹(shù)、伸展樹(shù)、動(dòng)態(tài)樹(shù)等高級(jí)數(shù)據(jù)結(jié)構(gòu)、二分圖、最大流、費(fèi)用流等圖論知識(shí)內(nèi)容,解決前面所學(xué)內(nèi)容組合的綜合題,全面提升學(xué)生解決競(jìng)賽中復(fù)雜問(wèn)題的綜合知識(shí)應(yīng)用能力。
課程的規(guī)范化,在很大程度上避免了學(xué)生為掌握全面的知識(shí)而四處搜尋書(shū)本、文獻(xiàn)等資料所花費(fèi)的精力和時(shí)間,合理安排教學(xué)內(nèi)容讓學(xué)生循序漸進(jìn)地掌握競(jìng)賽內(nèi)容,減少學(xué)生競(jìng)賽學(xué)習(xí)中的挫折感,較好地保證競(jìng)賽培訓(xùn)的高效性。
3.3 保證穩(wěn)定的指導(dǎo)教師隊(duì)伍,提升教師指導(dǎo)水平
在教學(xué)和科研任務(wù)上適當(dāng)減少指導(dǎo)老師的工作量,讓指導(dǎo)老師有一定的空余時(shí)間學(xué)習(xí)競(jìng)賽相關(guān)知識(shí),輔導(dǎo)學(xué)生,安排學(xué)生訓(xùn)練。教師的知識(shí)積累和專(zhuān)業(yè)功底會(huì)幫助他在較短的時(shí)間完成一個(gè)新問(wèn)題的攻關(guān),將方法與學(xué)生共享,形成良性循環(huán)。同時(shí)給與培訓(xùn)指導(dǎo)教師適當(dāng)?shù)膬?yōu)惠政策,吸引教師長(zhǎng)時(shí)間從事培訓(xùn)工作,使指導(dǎo)教師隊(duì)伍保持穩(wěn)定。
3.4 加強(qiáng)競(jìng)賽中團(tuán)隊(duì)協(xié)作的訓(xùn)練
在ACM/ICPC中,團(tuán)隊(duì)協(xié)作精神是取勝的最重要的非技術(shù)性因素。在組建團(tuán)隊(duì)的過(guò)程中,要讓團(tuán)隊(duì)成員之間的知識(shí)、技能、經(jīng)驗(yàn)甚至性格和行為都能互補(bǔ),使參賽小組的三個(gè)人之間達(dá)到完美的合作,形成一個(gè)和諧的整體[4]。在平常的日常訓(xùn)練中,對(duì)于一個(gè)團(tuán)隊(duì)的三名隊(duì)員來(lái)說(shuō)要加強(qiáng)下面幾個(gè)方面的訓(xùn)練:
首先,通過(guò)訓(xùn)練熟悉各個(gè)隊(duì)友的長(zhǎng)處和短處。在比賽中,應(yīng)該盡量將每個(gè)題目都分配給最適合它的人來(lái)做。比如,錄入程序快的隊(duì)員就上機(jī)操作,英文能力強(qiáng)的隊(duì)員就解釋題目,精通算法的隊(duì)員在解題思路上多拿主意。
其次,提高自己的口頭表達(dá)能力,能準(zhǔn)確地向隊(duì)友表達(dá)自己的意思。比賽中,選手常常需要將題意轉(zhuǎn)述給隊(duì)友,表達(dá)不清很可能會(huì)誤導(dǎo)隊(duì)友,給全隊(duì)帶來(lái)巨大的損失。競(jìng)賽中遇到難題,需要集合全隊(duì)的力量共同攻克,每個(gè)人需要能清晰地表達(dá)自己的想法。
再次,逐漸熟悉隊(duì)友的程序設(shè)計(jì)風(fēng)格,每個(gè)隊(duì)員都要盡量去做到程序書(shū)寫(xiě)規(guī)范。ACM/ICPC的測(cè)評(píng)是嚴(yán)格的,只有通過(guò)了全部測(cè)試數(shù)據(jù),該題才算完成,要對(duì)則全對(duì),要錯(cuò)則全錯(cuò)。一個(gè)題編碼完成并不代表該題解決了,程序中可能隱藏著各種錯(cuò)誤,當(dāng)隊(duì)友需要幫助的時(shí)候,要快速讀懂其程序,找出其中的隱患。
最后,通過(guò)訓(xùn)練使團(tuán)隊(duì)能力最大化地發(fā)揮出來(lái)。隊(duì)員之間相互信任,充分發(fā)揮每個(gè)隊(duì)員的個(gè)人能力和團(tuán)隊(duì)的集體智慧,同時(shí)合理安排機(jī)器的使用,盡量提高機(jī)器的使用效率,從而達(dá)到“1+1+1>3”的效果。
4 結(jié)束語(yǔ)
ACM/ICPC競(jìng)賽是全球最有影響力的大學(xué)生計(jì)算機(jī)程序設(shè)計(jì)競(jìng)賽,被譽(yù)為“程序設(shè)計(jì)的奧林匹克”。ACM/ICPC競(jìng)賽教學(xué)模式是一種新型的教學(xué)模式,它以ACM競(jìng)賽為根本目標(biāo),注重學(xué)生的創(chuàng)新能力、團(tuán)隊(duì)協(xié)作能力、學(xué)習(xí)興趣的培養(yǎng)和對(duì)基礎(chǔ)學(xué)科的認(rèn)識(shí)。該文針對(duì)普通本科院校在ACM/ICPC競(jìng)賽教學(xué)中存在的問(wèn)題,結(jié)合本校的實(shí)踐經(jīng)驗(yàn)進(jìn)行探討,提出改進(jìn)競(jìng)賽教學(xué)模式,建立完善的培訓(xùn)體系,穩(wěn)定指導(dǎo)教師隊(duì)伍,提高團(tuán)隊(duì)配合效果的觀點(diǎn),給其他普通本科兄弟院校的ACM/ICPC競(jìng)賽教學(xué)起到一點(diǎn)借鑒作用。
參考文獻(xiàn):
[1] ACM國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽[EB/OL]. http://baike.baidu.com/view/201684.htm.
[2] 高洪志,鄧琨. ACM國(guó)際大學(xué)生程序設(shè)計(jì)大賽的培養(yǎng)模式探討[J].黑龍江科學(xué),2010(4):58-60.
[3] 郭煒. ACM/ICPC亞洲區(qū)預(yù)選賽命題經(jīng)驗(yàn)談[J].計(jì)算機(jī)教育,2011(16):52-56.
[4] 楊松濤,王斌,張海燕. 從ACM/ICPC競(jìng)賽探討大學(xué)生的能力培養(yǎng)[J].計(jì)算機(jī)教育,2010(24):16-18.