近期每天刷的還是noip上下的難度的題,效率比從前提高不少。一天大概都是6道題左右的樣子,我還是比較滿意的。
但是昨天跟賈老師聊完後我覺得確實應該把近期學習的東西進行總結,期間找到的感覺也寫下來,要不然都忘了可不是很好^ _ ^
這段時間我刷的最多的應該是dp題,我能感覺到我的dp能力提公升了不少。
在做dp的時候,我習慣先確定有幾層迴圈,分別對應什麼。然後不管空間,先寫出陣列,然後再嘗試找有沒有關係,比如說f[i][j][k]只能從f[i-1】……得來,那麼我們就可以把i這維刪掉。
我們做dp的時候主要是要確定階段這個概念,要考慮全無後效性。這兩個專有名詞其實並不是那麼坑,現在我再做dp的時候已經能慢慢摸出來點了。
我現在發現做noip的題的時候呢應該先注意資料範圍裡面有沒有什麼特別好玩的地方:比如說vijos1191最大子矩陣。這裡的m範圍為2,所以就可以0,1,2分類討論。
然後我們要注意如果一道題的資料範圍n是100000或者1000000的話,我認為根據noip的難度應該不會是什麼高階的資料結構優化,多半這個時候要考慮o(n)的dp或者是貪心了。
做dp題的時候一定要想到那些比較重要的關係。有些時候如果實在不會也可以dfs部分分,或者貪心部分分。如果貪心做得好還是可以拿很多分的。但是一般的dp題都是貪心能過樣例,然後評測的時候0分。所以如果要用貪心一定要慎重。
如果拿到一道題先想dp,想不出來,搜尋只能拿很少的分。就要考慮用二分答案,貪心,數學,排序,構造這些東西去做了。我發現一般這種題更考驗素質,因為其他的東西或多或少還是有經驗的,但是這類題根本不可能見到哪怕是類似的,更別說乙個套路的了。但是考試的時候靈感爆發說不定還是能想出來的。所以看到這種題最關鍵的還是心態不能亂,因為我也相對見過不少這種的題。
做了幾個大模擬,大搜尋,感覺這些暴力方面的東西提公升了不少(關鍵是之前這些東西太弱了)。八數碼自己寫的已經很接近正解,幾道vijos noip難度的題也可以說寫的差不多,調題的能力也提公升了不少。
資料結構方面比賽中真正能應用的也不少,但是確實應用比較淺,應該是普及組水平,但是普及組裡面出現的資料結構題應該還是能做出來的。提高組就不好說了,一般是還是很難的。
noip還是會有不少數學的題目(這裡的數學指的不是數論,是類似於遞推式,或者是組合數學)。一般碰到這種題,我可能還是能寫出程式的,但是一般都拿不了滿分,因為還是考慮不全。一般這種題目能過掉樣例的情況下要考慮樣例是不是特殊情況,如果是那麼就要試普通情況能不能過,否則就要試特殊情況(極限資料)。這種題目沒別的做法,考慮情況的時候盡可能多考慮,然後不停的試資料。(所以資料正確性很關鍵^ _ ^)
我認為考試的時候有沒有乙個好的心態是非常關鍵的。碰到一道題,先想dp能不能做。然後想是不是什麼資料結構的題。當然如果這道題很明顯,或者見過那就直接秒殺吧。有的時候我還是會忽略爆搜這種東西。不過確實,爆搜是個好東西qwq。據說某神犇因為一道題懶得打爆搜,錯失國際金牌orz。
先寫這麼多吧,有什麼新的想法會再來補充的-_-
近期學習總結
最近在忙著小 的寫作,主要研究方向是基於p2p網路的非結構搜尋演算法,這一周似乎就沒什麼進展,原因如下 1.思路太亂,切入點沒選好,範圍有點太廣,沒有就某一點做深入的研究。缺少學習後的及時總結,總是沒有一條主線。2.為了做實驗,有點急躁,思路沒有完全理順,就想著怎麼把實驗做好,做實驗的前期準備工作沒...
近期java總結
1.包訪問的實驗。在例子明明可以通過set classpath達到 隨心所遇的呼叫類。但是指定類路徑如果設定成更目錄的話卻沒有達到。看來,windows沒有給你全盤搜尋的美事。還得具體指定了。2.建構函式的特性。老是忘記不能返回值 不能在方法中用 return 語句返回乙個值 因為在定義構造方法時加...
近期總結(2013 7 14)
一段時間過後總要總結一下,不能一味往前衝,而迷失了目標和方向,以及前進的動力。前段時間可以說是我職業生涯的一次重大轉折,經過兩年的努力,由乙個開發人員,被提拔為乙個基層管理者,開始帶團隊。我誠惶誠恐,因為自己沒有任何的經驗,唯有一腔熱血和實現自我價值的夢想。角色的轉換也讓自己有諸多的不適應,因為我原...