HDU 開放式進階訓練(11)全程測試

       這兩天晚上一直在做這一套試題(那時寒假回校坐火車,耽誤了),做出來的4道都沒什麼難度,估計是心裏沒有壓力。比賽能做出4道,那才行。

       先來簡單說下做出來的這4道,其他的以後更新吧。

 

 

      1.1002(3774)其實是這次比賽中最簡單的一題了,不過從AC的人數看來並不理想。毛教主說這就叫比賽,不僅題目難度不同,連題目理解能力也上升了不少,估計被這題卡住的90%的選手是卡在理解題意了,我當時做這題時讀了兩遍沒感覺,後來在Mo、xi的幫助下才理解了題意,再後來25行代碼A了。這題需要注意的是題目要求繩子長度必須至少是懸崖(最大)高度的2倍才能用來爬(當時沒懂樣例就卡在這裏)。其他的就不侮辱讀者的智商了、想看代碼的下面有。

 

      2.1005(3777)這題不錯,題意是給你一些需要打印的頁碼範圍(範圍間有重合),問你至少要打印多少頁才能全部打完(題目中規定了最大頁碼值)。我一開始想的複雜了,想着怎麼把重合的去掉,其實這題中重複的頁碼並不重要,只是讓你求所給的範圍裏有多少頁碼值(凡出現的,滿足總範圍的)。那麼設置一個bool型的vis[]數組來記錄第i頁是否出現在了這些範圍裏不就行了麼,懂了吧?原來so easy!

 

      3.1007(3779)這題有點難度(對我來說),我交了好幾次才AC,一開始不是wa就是tle。這題其實就是給定兩個子序列和一個總序列(滿足棧的形式,只能從一邊取數,不過和棧沒一點關係,主要是看到火車軌道我就想起棧,被《入門經典》害慘了),判斷能否由這兩個子序列得到總的序列。元素有相同的話應該使用記憶化搜索。理解了這一點這題立馬就變水了,不過需要注意的是如果沒有if(ok) return;這一句的話還是會tle。具體見下面的代碼。

 

      4.1008(3780)這題就是簡單的模擬,關鍵還是在於理解題意,題目就是告訴你三個數字表示長、寬、高,然後判斷這個範圍所表示的是什麼類型的郵件。我一開始沒把packet的範圍搞對,導致連WA了兩次,測了幾組數據之後才發現不對。唉,做模擬題還是要心細啊!

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章