CCF-CSP認證考試介紹以及復習技巧指導


  • CCF-CSP考試時間及費用

時間一般是每年3、9、12月的中旬,報名時間一般也是提前一個月,不固定。

非計算機協會會員300元/次,會員180元/次(學生會員需繳納50元/年的會費),相當於一年可以打三次折。

  • 編程語言及編譯器

  1. C/C++:Dev-CPP 5.4.0 (Min GW 4.7.2)
  2. Java:Eclipse (Java SDK 1.7.0_15)
  3. Python:3.6.5
  4. 瀏覽器:Chrome

報名時選擇其中一種編程語言,而且考試時只能用報名時選擇的語言答題.

  • 難度及題目規律

難度呈冪次增長(第一題難度n,第二題難度n^{2},第三題難度n^{3}......:

第一題:一般是數值方面的問題(一群整數)基本一個for循環可以解決的了,比較簡單,學過C語言基本可以得分。推薦哈工大蘇小紅的C語言程序設計,這本書相對來說比較高階,會有涉及到鏈表操作,這對學習數據結構很有幫助。

第二題:一般是接近n^{2}的復雜度,最少得需要兩個For循環,要說兩個For循環也不難,難就難在一般是時序題、通常要排序,而且要用到多元數據。比如18年3月的第二題碰撞的小球,

數軸上有一條長度為L(L為偶數)的線段,左端點在原點,右端點在坐標L處。有n個不計體積的小球在線段上,開始時所有的小球都處在偶數坐標上,速度方向向右,速度大小為1單位長度每秒。
當小球到達線段的端點(左端點或右端點)的時候,會立即向相反的方向移動,速度大小仍然為原來大小。
當兩個小球撞到一起的時候,兩個小球會分別向與自己原來移動的方向相反的方向,以原來的速度大小繼續移動。
現在,告訴你線段的長度L,小球數量n,以及n個小球的初始位置,請你計算t秒之后,各個小球的位置。

                                                                                                                                                  ---來自ccf-csp考題

其中會涉及到長度、個數、時間、速度等不同單位的數據。

第三題:一般會是字符串的處理,而且一般是對復雜文本的處理,這里最好使用C++里邊的String類做字符串處理,如果要自己用c語言寫字符串處理函數,不僅不一定寫對,而且還會相當麻煩,浪費時間。

第四題:一般會用到高等數據結構,比如樹、圖,而且需要用到的算法也不是課本上學到的簡單算法,得用更高級一點的時間、空間效率更高一點的算法。

第五題:一般是純粹的算法題。但是算法難度一般是ACM級別的,所以經過ACM訓練的訓練員也不一定能拿滿分。

  • 准備的東西

  1. 訓練題:(1)ACM題庫。(2)CCF-CSP真題,總結每年題型。
  2. 書籍:CCF—CSP考試是可以帶書進去的 ,(1)如果對語法掌握不熟練的話可以帶一本編程語言書。(2)最好帶一本C++ STL方面的書(是STL工具書,STL怎么使用的書,而不是STL源碼分析類的書)STL方面的書可以幫助我們又快有准的寫出想要的排序等代碼,如果我們當場寫的話會很浪費時間。(3)算法書,有資源的可以找一本ACM培訓競賽書,前面也說過書上的算法對付考試是不行的。需要更好的算法。
  3. 每天寫程序,不能手生,最少得2h,適應4h的考試時間。
  • 最后說一點得分技巧以及着重訓練能力

技巧篇:說明——CCF-CSP是機器閱卷評分,題目規定有代碼運行用時,超時的測試用例是沒有分的。給分目前最小單位是10分,按照對你的代碼的一個測試,比如從10到100這個規模來20%測試用例,100-1000來30%測試用例,1000-10000來50%測試用例,通過一個測試用例給10分,也就是說(1)我們自己測試對的在評分的時候不一定能拿滿分;(2)我們在3、4、5題上也可以通過實現簡單數據集上的代碼而得分,而不是一分得不了,3、4、5題我們可以從最小規模開始,可以排除特殊情況來寫代碼,只要簡單的測試用例能通過我們就能得分。

訓練能力:我們要想拿高分就要有針對性的訓練。(1)首先不能再出基礎性錯誤,比如輸入輸出,要按照題目規定來,要求輸入或輸出兩個數據間用空格分開我們不能使用回車分開,這樣會導致0分。我們可以通過真題訓練自己所使用語言輸入輸出代碼的格式,也不要在這上面浪費時間。(2)要着重鍛煉設計測試樣例的能力,我們在考試的使用代碼提交上去后當時是沒有分數的,得第二天才有,所以我們並不知道我們提交的代碼是否能拿滿分,這就要我們自己測試好再提交代碼。(3)鍛煉單步調試能力,在平時編程的時候我們可以使用cout來輸出看一下執行過程中變量的值,但是這樣容易犯錯——考試的使用萬一沒有把測試用的cout刪除,這樣就會誤導機器判分,機器判斷輸出和正確輸出不一樣就是0分。

 

以上是我們學校李曉鷗老師對我們學院進行CCF復習技巧指導所做的報告總結。之后我會對CCF-CSP真題寫一些代碼解法分析,我會從最笨的算法寫起,並把逐步優化的思路寫上。最后會總結一下解題思路技巧,力求整理出來解決這一類問題的方法,最后希望能遇到問題有一定的思路,並在最難的4、5題得到分數,10分也不嫌少。也希望大家多多支持,多多指教。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM