1. 程式人生 > >9.27學校模擬總結

9.27學校模擬總結

.org 修改 二分 tps 復雜 模擬 target 差分 數據結構

這一套模擬卷我覺得難度不是很高,挺良心的,會的分也都拿到了,不會的就是不會……

題面就不放上來啦~~gg不讓~~

T1 flower

最大值最小?那果斷二分啊。

二分一個最小高度,然後judge的時候從頭開始掃就行,遇到一個高度比mid小的就從這個數開始把長度為L的區間加上這個差值,並記錄天數,如果超過m天就返回false。區間修改第一反應是線段樹,但其實差分就行了,還是O(1)的。總復雜度O(nlogn)。

T2 treasure

正解自然是想不出來,在OI生涯中好像沒遇到能有數據結構優化矩陣旋轉的……於是開始杠30分。

昨天剛好在初賽書上看到了一個O(n2)旋轉矩陣的,於是就用上了,O(n3)暴力,30分應該是穩了。

T3 red

就喜歡這麽短的題面,省去了我那麽多讀題的時間(我語文菜啊)。

然而看到幻想鄉還是不由得驚了一下,因為今天剛把紅色的幻想鄉給AC了……

一眼就知道是期望dp,然後看了看數據範圍,很明顯是一個二維狀態O(n2)的復雜度。於是設dp[i][j]表示有 i 張紅牌,j 張黑牌的時候的最優的幻想鄉幣期望。

於是dp[i][j]分別從dp[i - j][j]和dp[i][j - 1]轉移過來,分別代表這一次翻了紅牌/黑牌的情況,於是有:

dp[i][j] = max( (dp[i - 1][j] + 1) * i / (i + j) + (dp[i][j - 1] - 1) * i / (i + j), 0)

然後忘了初始化dp[i][0] = 1,調了半天。

嗯……完啦。

9.27學校模擬總結