陳英 袁東 謝蔚 熊家俊



摘 要:首先介紹由杭州電子科技大學發起的“多校聯合訓練”賽的基本情況;然后闡述通過該聯合訓練賽對我校學生在知識水平、心理承壓、團隊協作、英語閱讀、做題技巧等方面的影響;最后以我校學生為對比樣本,從多方面論證多校賽對提高我校學生綜合素質的作用。
關鍵詞:程序設計競賽;多校聯合訓練;綜合素質
中圖分類號:G640 文獻標志碼:A 文章編號:2096-000X(2019)04-0088-04
Abstract: Firstly, the paper introduces the basic situation of "multi-school joint training" competition initiated by Hangzhou University of Electronic Science and Technology. Then it expounds the influence of the joint training competition on the knowledge level, psychological pressure, teamwork, English reading and problem solving skills of the students in our school. Finally, taking the students of our university as the comparison sample, the effect of multi-school competition on improving the comprehensive quality of our students is demonstrated from various aspects.
Keywords: programming contest; multi-school joint training; comprehensive quality
引言
ACM國際程序設計競賽(International Collegiate Programming Contest,ICPC)和中國大學生程序設計大賽(China Collegiate Programming Contest,CCPC)等程序設計競賽有效地提高學生學習的主動性、思考的創造性、團隊的合作性[1,2],隨著參與比賽的高校越來越多、贊助比賽的公司影響力越來越大,其比賽的重要性也越來越大[3]。為了更好地備戰這兩項賽事,杭州電子科技大學每年暑假會發起“多校聯合訓練”(簡稱多校賽),即利用暑假的時間“以賽代練”,有效地提高各高校參賽隊伍的實力。本文將以我學院近兩年學生參加多校賽后的變化對比結果來討論多校賽對提高學生水平的作用進行分析和探討。
一、多校聯合訓練賽簡介
為了備戰每年下半年9月份開始的ACM-ICPC的各個區域賽,從2009年開始,由杭州電子科技大學等高校發起了“多校聯合訓練”,到今年為止已達10年。由于組織得當,在沒有過多宣傳的情況下,期間參與的高校和參與的人數已經越來越多,除了清華、北大、上交大和復旦等傳統強校以外,水平一般的高校也更多參與其中,近年來,中學生的隊伍也越來越多(例如成都第七中學、江蘇省淮陰中學、南京外國語學校、樂清市知臨中學、金陵中學河西分校、江蘇省常州高級中學等)。如圖1所示,2012年到2018年參加多校賽隊伍由262支增加到999支,增長的幅度是非常大[4]。
多校賽的情況大致為:1.每個暑假的多校聯賽共有10場比賽,比賽均為網絡賽,全部在杭州電子科技大學OJ(Online Judge)上進行,參賽隊員不需要現場集中;2.為了讓參賽隊員有時間消化比賽題目,每周只有2場比賽;3.所有的題目均為原創,出題方為國內頂尖的ACM選手或傳統ACM強校,且表述均采用英文,難度類似于ACM區域賽;4.從2018年起,賽后公布題解、標程和測試數據。
二、對我校的影響
多校賽是以賽代練,每場比賽結束后,每位同學都有補題的過程,即把比賽過程中不會的題目,在賽后的時間把這些題目做出來,同時理解掌握新的知識點,這樣知識點形成累積效應。我校從2017年暑假開始參加多校賽,雖然只參加了短短的兩年多校賽,但是對我校學生各方面的能力的提高競賽水平的提高起到非常大的作用,本文將從以下幾個方面進行對比分析:
(一)知識水平的提高
毫無疑問,經歷了整個暑假多校賽后,每個小組成員的知識儲備都得到了較大程度的提升,每位同學都掌握了不同的知識點。例如在多校賽之前,大多數同學只掌握基本的算法,而經歷多校賽的系列賽和補題過程后,各個小組掌握了更多的算法,例如:求解線性同余方程、莫隊、矩陣快速冪、中國剩余定理及拓展、Dijkstra的隊列優化、逆元、費馬定理、博弈論、圖論和數論方面的知識點。
(二)心理承壓能力的提高
學生多校賽前的表現為:1. 在比賽過程中特別在乎排名,患得患失,影響正常的發揮;2. 容易緊張,題面發下來后二十分鐘基本都發蒙。而經歷了多校賽以練代賽后,學生的表現為:1.能夠做到安心做自己的題,而不在比賽過程中在乎自己的排名情況;2. 能夠對各種出現的情況做到臨危不亂;3. 更加清楚地知道差距是用來彌補的,而不是垂頭喪氣的理由;4. 能更加客觀地認清自己的水平,能緩解自己的負面情緒。
(三)團隊協作能力的提高
在多校賽前組隊時,我們采用自由組合的策略,即是讓學生自己挑選隊友,由于之前沒有配合過,在選擇隊友時,更多是根據自己的感覺組隊,所以各支隊伍的表現為:因為不了解隊友的比賽風格,配合程度很差,有些隊伍基本不配合,出現了各自為戰的不好現象。而經過多校賽以后,我們允許再次重新組隊,則隊員之間多采用“強強組合、風格相近、知識點互補”的原則進行自由組隊,多校賽后各支隊伍的表現為:1.非比賽期間的溝通交流增多,更加了解彼此的優勢和劣勢;2.比賽過程中團隊之間加強了交流,也有了明確的分工協作,配合更加協調、默契。
(四)英語閱讀能力的提高
由于比賽的題目采用英文描述,且題面越來越長,而我們的學生英文水平非常一般,所以,在多校賽之前,存在讀題速度慢、無法抓住題目要點,甚至看不懂樣例的情況。通過多校賽后,各組的情況均得到普遍好轉,具體表現為:1.讀題的速度得到明顯提升,能夠比較快速地略過題目鋪墊性的描述而找到題目的重點,這有效地縮短了解題時間;2.每個人的英文讀題能力都有提高,對一些在題目里經常出現的單詞能夠快速反應;3.對專業術語的單詞理解也更加順利了。
(五)做題技巧的提高
由于學生基本都是零基礎,之前沒有經歷過這種專題訓練,所以在做題方法上,基本無技巧可言,一般都存在拿到題目后,都存在比較盲目地做題,不知道從哪道題開始做,進而出題率不高,且出題速度慢。經過多校賽后,做題技巧得到了有效提升,具體表現為:1. 各組結合自身的情況,選擇先易后難的做題策略,瀏覽完整個題目,再選擇做相對簡單的幾道題;2. 各組會尋找答案的規律,會分析題目的含義,會一起討論,使得出題比較穩定;3. 對于設置了“陷阱”的題目,能夠多考慮細節;4. 對于一道題,能夠考慮多種解題方法,在分析時間空間復雜度與限定條件的基礎上,選擇更加優化的方法去解答。
三、具體的數據對比
(一)不同年間數據對比
我校自2017年始,到目前為止只參加了兩年,雖然時間短,但是效果比較明顯,2017年暑假有15人、5支隊伍參加,只有1支隊伍取得1場比賽的積分。2018年暑假有18人、6支隊伍參加,則有1支隊伍取得2場比賽的積分,1支隊伍取得1場比賽的積分。具體的積分對比情況如圖2所示。
從圖中可以看出,不管是從獲得積分的場次還是總體積分,2018年均好于2017年,這說明雖然集訓的時間不長,但是已經初顯成效。
(二)不同隊員間對比
2018年大學生程序設計競賽和2018年ACM-ICPC亞洲區預賽各個賽點的網絡賽,我校派出12支隊伍參賽,即6支隊伍參加了暑假的多校賽,6支隊伍沒有參加暑假的多校賽,本文分別具體到CCPC2018和2018年ACM-ICPC南京站、沈陽站、徐州站、焦作站、青島站、北京站網絡賽的每只隊伍的出題數進行詳細地比對。圖3表示這12支隊伍在網絡系列賽中的成績,其中A-1至A-6表示參加了暑假多校賽的隊伍,B-1至B-6表示未參加暑假多校賽的隊伍。從圖3中可以看出,參加了多校賽的6支隊伍在7場比賽中的總出題數為108題,平均每場比賽出15.4題,而未參加多校賽的6支隊伍在7場比賽中的總出題數為35題,平均每場比賽出5題,對比兩者的數據可以發現,參加了多校賽的隊伍出題數為未參加多校賽隊伍的出題數的3倍,這也說明多校賽對提高我校學生競賽成績的作用。
圖4從出第一道題的時間來進行對比分析,如果某一場比賽出題數為0,則把出題的時間賦值為300m,從該圖中可以看出,參加了多校賽的6支隊伍在7場比賽中出第一道題總花費的時間為382m,平均每支隊伍每場比賽出第一道題所花費的時間為81m,而未參加多校賽的6支隊伍在7場比賽中出第一道題總花費的時間為9228m,平均每支隊伍每場比賽出第一道題所花費的時間為220m,對比兩者的數據可以發現,參加了多校賽的隊伍出第一道題所花費時間只有為未參加多校賽隊伍出第一道題所花費時間的三分之一左右,這進一步說明多校賽對提高我校學生競賽成績的作用。
綜合圖3和圖4可以得知,參加了多校賽的同學在出題數量更多的情況下,出第一道題所花費的時間更少,這一正一反更加說明了多校賽對提高我校學生競賽成績的作用。
再者,在系列賽結束后,2017年,我們只取得青島站的現場賽名額,而在2018年,我們則取得了南京站、徐州站和青島站的現場賽名額,這些名額都由暑假參加了多校賽的同學取得的,這也說明了多校賽確實提高了我校學生的競賽水平。
(三)在網絡賽中的整體排名對比
圖5從我校各支隊伍在網絡賽中的排名進行對比分析,從該圖中可以看出,參加了暑假多校賽的6支隊伍在網絡賽中的排名均好于為參加多校賽的6支隊伍在網絡賽中的排名,并且參加了多校賽的6支隊伍的排名穩定性也更好。
圖6是網絡賽的總參加隊伍數量以及至少做出一道題的隊伍數量,結合圖5和圖6分析可以發現,參加了多校賽的6支隊伍相對其他學校的隊伍,具有一定的競爭力,反之,未參加多校賽的6支則完全沒有競爭力。
四、結束語
程序設計類競賽所考核知識點的廣度和深度都遠遠超過了相關課程教學大綱的要求,學生要想在比賽中取得一定的成績,需要實實在在提高自己的綜合素質,而杭州電子科技大學提供的“多校聯合訓練”賽為我校學生提供了很好的平臺,本文利用近兩年來我校學生參加多校賽的結果,對比分析說明多校賽對提高我校學生綜合素質的作用是非常明顯的。
參考文獻:
[1]李玉華,申紅雪,陳明,等.依托程序設計競賽的大學生創新能力培養模式研究[J].教育教學論壇,2018,20:154-155.
[2]李環.基于ACM競賽的程序設計類課程教學改革研究[J].計算機教育,2016,3:115-118.
[3]余穎,歐陽純萍,劉杰,等.依托ACM/ICPC的高素質IT人才培養探索與實踐[J].計算機教育,2015,16:10-13.
[4]杭電多校賽排名情況[EB/OL].http://acm.hdu.edu.cn/multi_rank/entry/ranklist/index.php.