2020.9.6 解題報告
2020.9.6
目錄
\[\text{完全憑依!} \]
\[\text{By:Th15.5Block} \]
答題情況
總成績 : 150 , 排名 : 5 / 6
T1 : 100 T2 : 20 T3 : 30
各題目分析
題目 1 :
預估成績 : 100 實際成績 : 100 考試用時 : 8:00 ~ 8:20
簽到題。
題目 2 :
預估成績 : 100 實際成績 : 20 考試用時 : 8:20 ~ 9:00,10:00 ~ 11:00
先寫了 \(O(n^3\log m)\) 的暴力,卡常卡到 2.4s 想出正解。
寫完正解扔了,最後 FST 了。
有暴力一定要拍暴力!
題目 3 :
預估成績 : 0 實際成績 : 30 考試用時 : 9:00 ~ 10:00,11:00 ~ 11:30
一開始就覺得不可做,棄了,寫了貪心。
題目解析
T1
將 n 個串中相同位置的 0/1 的數量記錄下來。
貪心的找每一位數量較少的數字即可。
T2
二分最小的長度,DP 檢查。
設 \(f_{i,j}\) 表示使用了 \(i\) 次紅,\(j\) 次綠後,能覆蓋到的最遠的法壇的位置。
DP 方程:
\[f_{i,j} = \max(f_{i-1,j} + k, f_{i,j-1} + h) \]
\(k\) 表示從 \(f_{i-1,j}\) 開始,使用一次紅光,能覆蓋到的最遠的右側的法壇。
可以通過二分得到,\(h\)
最後檢查能否覆蓋到 \(n\) 即可,複雜度 \(O(n^2\log m)\)(\(m\) 為答案最大值)。
T3
要求次短路,先求出最短路。
設到達節點 \(x\) 的最短路長為 \(s1\), 與結點 \(x\) 相連的最短邊長度為 \(c\)。
設 \(s2=s1+2\times c\),\(s2\) 即為次短路長度的上界。
DFS,搜尋過程中利用 \(s2\) 進行剪枝,不斷更新 \(s2\)。
可以證明每個節點被到達不超過 \(n\) 次。
程式碼實現
T1 :
考場程式碼
T2:
考場程式碼
正解
T3:
考場程式碼
正解