省選測試26

2022-02-17 18:56:03 字數 719 閱讀 1232

題目大意 : 經典漢諾塔,操作者一定會按最優方案移動圓盤,給出乙個狀態問還需多少步

如果圓盤i現在處於t,那麼至少移動 \(2^\) 步才可以到現在狀態(上面圓盤1到i-1從柱s移動到柱m需要 \(2^-1\)步,把圓盤i從柱s移動到柱t需要1步),

如果圓盤i現在處於s,那不用移動,如果在m的話是不可能的,輸出no就好了

show code

#include using namespace std;

int read(int x = 0, int f = 1, char c = getchar())

int n, a[55];

long long ans;

void solve(int x, int s, int t, int m)

if (a[x] == s) solve(x - 1, s, m, t);

else if (a[x] == t) ans -= 1ll << x - 1, solve(x - 1, m, t, s);

else return ans = -1, void();

}int main()

return 0;

}

題目大意 :

show code

題目大意 :

show code

省選模擬26

不然想到乙個50分的dp,然而我的dp轉移和正解不一樣所以沒法優化所以就死了。要是用我的dp推正解大概只能考慮實際含義。考慮每次在已有的顏色序列中間插入一段,那麼考慮轉移的方案數,不難得到一條dp轉移路徑的貢獻是每次顏色序列長度 1的乘積。所以列舉一共經過了多少次轉移,轉移次數為k的所有方案的貢獻之...

省選測試21

設 f i 為上一次參加的比賽是第 i 場的最大愉悅值 則 f i max f i f j frac a i j 對於隨機的資料,把列舉的範圍卡到 3000 即可 容易發現,如果沒有 a j leq a i 的限制,那麼就是乙個裸的斜率優化 dp 把 f i frac frac 看做 y 把 i 看...

省選測試9

這個名次已經是倒數了 感覺整場考試不是很在狀態,正解想不到,暴力分也沒有打滿 其實前兩道題仔細推一下還是能想出來的 t1 2 sat 有一段時間沒有打了 優化建圖的方式和之前的某道題挺像的,但是當時那道題沒改 這次算是補了乙個鍋 t2 的資料範圍折半列舉也不難想,實現時注意一下細節就行了 t3 有一...