YCOJ003(育才20240902模擬賽)
有2場沒寫,不想寫了,一場 \(rk1\) 一場掛爽了。
這場不是很難。
T1:
簡要題意:給定 \(n\) 個數的序列 \(a\),欽定 \(i,j(1 \leq i,j\leq n)\) 之間有一條邊權為 \(a_i\times a_j\) 的邊,求最小生成樹。
簡單分討,如果全是負數或正數因為不論怎麼乘都是正數,那麼其他 \(n-1\) 個點連向權值最小的點即可。
否則權值正的連負的,負的連正的即可。
T2:
Robot and String - 洛谷 | 電腦科學教育新生態 (luogu.com.cn)
記 \(f_{i,j}\) 為字元 \(s_i\) 變成 \(j\) 的最小右端點。
顯然
- \(f_{i,j}=i,j=s_i\)
- \(f_{i,j}=f_{f_{i,j-1}+1,j-1},j>s_i\)
- \(f_{i,j}=f_{f_{i,27}+1,j},j<s_i\)
其中 \(f_{i,27}\) 表示空字串的位置。
此時顯然可以倍增,最後看刪完沒有就行。
T3:
P6303 eJOI2018] AB 串 - 洛谷 | 電腦科學教育新生態 (luogu.com.cn)
差點場切,嗚嗚嗚,細節好多,掛了 29pts。
顯然一段連續的字母可以縮成一個字母。
發現答案和最長的字串的長度有關,考慮讓兩個字串長度相等。
如果開頭兩個不一樣,那麼直接交換,可以發現可以一次性消掉 2 個,如果一樣把長度那一個的前一個換下來即可。
T4:
T507586 打怪(monster) - 洛谷 | 電腦科學教育新生態 (luogu.com.cn)
籤。
顯然花費金幣數為 \(a_i\times 2^{x-1}\) \(x\) 使比 \(a_i\) 小或等於的數的個數。
然後打表發現設當前數出現次數為 \(p\)。
則當前賺到的金幣數為 \(2^{n-p}\)。