1. 程式人生 > 其它 >ICPC_2022_綿陽站賽後補題

ICPC_2022_綿陽站賽後補題

一共是補了5個題 H題嗯是沒看明白 

先寫思路 以後找時間補上

A.Ban or Pick, What's the Trick

首先觀察資料範圍 最重要的是k只有10個!!!

然後我們知道 每次肯定要麼選自己的最強的 要麼ban對面最強的 

所以在每一回閤中 如果我們已知回合數以及自己選了多少 對面選了多少 就知道雙方的bp情況了 

所以這樣的一個狀態是固定的 至於並且很好轉移 所以dp加上記憶化搜尋就很自然的出現了 

令dp[n][a][b] 表示第n次操作已經選了a個A中 b個B中的角色 

每次考慮選還是ban 然後轉移即可 

C.Catch You Catch Me

直接統計一下每個子樹的深度答案就出來了 簽到題

D.Gambler's Ruin

將pi排下序 會發現一定是前面一坨人押2隊,後面一坨人押1隊 並且我們肯定是讓賠率剛好卡在邊界上 

然後列舉前面有多少人 現在考慮sx+sy-max{sx*x,sy*y} 這個式子 

sx已知了 當sy增大時 sy*y也在增大 所以列舉後面有多少人的話 這個式子是一個單峰函式 直接三分即可 

G.Let Them Eat Cake

模擬題 嗯做就行 每次踢出去一半人以上 最多也就nlogn

M.Rock-Paper-Scissors Pyramid

模擬每次加入一個新的石頭剪刀布 它在金字塔上右邊爬樓梯的過程  如果它能一直贏下去 那麼它會一直打贏它左邊的人 直到有一個人打贏它 最後換成打贏它的人繼續向上  所以對於金字塔的又腰來說 就是用ai一直向上打 打不能打為止 原來的石頭剪刀布依然保持不動    所以可以抽象地維護成一個棧 然後每次加入新的用棧頂元素和現在的繼續比較 只到有一個元素可以打過現在的元素 把現在的元素入棧  最後輸出棧底的元素即可