SDUT 2012省賽熱身賽1

2022-05-24 02:18:09 字數 674 閱讀 5664

1001:給定n個牛的身高hi,求用最少的牛累計達到》= b(書架的高度)。看完題給我的第一印象是01揹包,可是20000*10000資料太大,果斷貪心從大到小排序即可,悲催的是迴圈裡面的迴圈變數忘++了,這麼低階錯誤,讓老衲情何以堪啊!!丟人啊!!

1002:這道題糾結死人了,先求出總高度sum = a[0] + a[1] ....,然後對剩餘的高度sum - b進行01揹包,求差即可。如果陣列開到極限果斷就會mle。。。氣死我了,我稍微份放小了一下竟然會a了,唉。賽後問了問他們,其實dfs所有可能出現的結果找差值最小就好了。每個物品就有兩種狀態,放或者不放 ,帶回溯的dfs即可完成。

1003:坑爹的題意果斷讀了很長時間,就是給定k張紙牌疊在一起,從bessie右邊開始發牌,只要發到第n個就給bessie,按逆時針進行。每發一張牌就把他後邊的p張移到最下邊,有k/n張good牌,其餘為壞牌,bessie想得到所有的好牌,給出他應該怎樣放置這些牌,才能使自己得到所有的好牌。按從小到大輸出。直接模擬就可譯了!!

1004:注意每次訪問的都是離0點最近的且未被訪問過的點!!按絕對值從小到達排序,貪心選擇即可。

1005:直接模擬做就行。

1006:才開始沒敢用搜尋寫,就是寫了個dp結果wa這弄得我叫個鬱悶啊!後來寫了寫dfs注意不該帶回溯的時候不要帶,思路還是不夠明確,弄得我調了很成時間。還有注意ans 初值要置為0,因為沒有河溝時,要輸出0的。

SDUT 2012省賽選拔賽1

a bfs 優先佇列。第一天只能感染defence小於等於1的並且與之連線的機器,第二天只能感染defence小於等於2的並且與之連線的機器.依次往後推。include include include include define maxn 505 using namespace std int g...

SDUT 2012省賽選拔賽1

a bfs 優先佇列。第一天只能感染defence小於等於1的並且與之連線的機器,第二天只能感染defence小於等於2的並且與之連線的機器.依次往後推。view code include include include include define maxn 505 using namespace...

SDUT 2012省賽選拔賽3

1001 將乙個數轉化成 2進製的數,同樣對這個數模 2倒取於,分清正數與負數,兩種不同的情況 1002 dfs 給的資料很小所以暴力就可以過,首先求出n個字串的全排列,然後檢查是否可以連線,求最後的長度,列舉出最小的值。在這裡又犯了個不可原諒的小錯誤。唉。細心。1003 字典樹 每個點減去空格的a...