EPIC Institute of Technology Round August 2024 (Div. 1 + Div. 2)

你说得太对辣發表於2024-08-14

傳送門

賽時沒打,賽後補的。

D題過的太慢,估計賽時過不了。

A

每行裡隔 \(k\) 個放一個,最少 \(\min(k, m)\) 種。列同理,因此答案為 \(\min(k, n) \min(k, m)\)

B

如果 \(a\)\(b\) 完全相同或者 \(a\) 倒過來之後和 \(b\) 完全相同則愛麗絲獲勝。

C

只需要判斷 \(s\) 是否能在每個圓到達 \(t\) 之前到達即可。

D1

對於排列中相鄰的兩個數 \((i, j)\)\(v_i\) 表示對於 \(p_i, p_{i + 1}\) 是否合法,若 \(i\)\(j\) 的父親,或 \(i\)\(j\) 父親的子樹裡,\(v_i = 1\)。當 \(\sum v_i = n-1\) 的時候這個排列合法。若 \(x\)\(y\) 的父親,當且僅當 \(x = y / 2\),若是後者可以從 \(x\) 往上跳。時間複雜度 \(O(n + q\log_2n)\)

D2

上面演算法的時間複雜度是對的,存一下邊然後查詢的時候倍增跳就可以。

E

相關文章