考試 省選8

2022-03-26 02:50:17 字數 801 閱讀 6008

t1一看是毒瘤分塊根本不想寫。

t2部分分都想不到。

t3只會打暴力。

t1正解是比較有意思的掃瞄線+線段樹維護單調棧。

如果我們把操作序列寫出來一定是這個樣子的。

\(m,aaa,m,aa,mm,a\)

然後如果我們把其中的加法操作全部累和就是:

\(a_i,m_i,a_j,m_j,a_k,m_k\)

這樣的話再設\(s_i=\sum\limits_^a_j\)。

這樣乙個新加入的對\(\\),能夠加入棧中的條件就是:\(a_tp+s_i-s_tp

那麼也就是:

\(\\)這個序列的上公升序列。

可以用線段樹維護單調棧維護。

對於某乙個位置按操作序列維護出單調棧。

從1到詢問時間點的單調棧長度+此時從1到詢問時間點的加法標記個數就是值改變的次數。

我們考慮用線段樹維護單調棧來做這一過程。

然後再利用掃瞄線演算法。

從左到右,差分詢問的區間,線段樹上同時支援加入和刪除某乙個點,區間加和區間求單調棧長度,而同時支援單點修改。

這樣對於某乙個位置來說,我們先在時間軸上加入所有的覆蓋這個點的操作,查詢的時候查詢時間軸上詢問以前的全部區間就可以了。

然後我們可以得到單調棧最後乙個元素的大小。

他的大小是\(m_i-s_i\),這樣再用乙個樹裝陣列就行了,查詢加法操作的字首和即可。

t2結論題,不是很能想出來。

t3網路流。

縮了點之後把反向邊開成inf就行了。

這樣可以防止從集合\(s\)向\(t\)之後再反向流回來。

細節很多。

考試 省選96

t1 這個題就是考慮去大力分類討論。首先可以知道 k 3 的情況答案肯定是0.那麼分類討論 3,2,1,0 的情況。首先是 k 3 的情況。這個情況很簡單。首先 m 必須為3。就是我們考慮一下用總的方案去掉鈍角三角形的方案。那麼答案就是 ans binom n sum limits 1 i 這很簡單...

考試 省選95

t1 大神說是打個表找規律啥的。我利用生成函式 吉夫特那個題的結論推出來類似的結論。就是說對於所有深度為 i 的點,其對答案有貢獻,當且僅當 t i 0 這樣的話就可以直接用乙個 orfwt 來做了。t2生成樹計數原題。比原題還簡單。可以把 a i 抽象成乙個點變成乙個含有 a i 個點的連通塊。然...

考試 省選86

t1 首先設出暴力的 dp dp i j k l 為前 i 個點中有 j 個白點結束方案為奇數,k 個黑點結束方案為偶數,當前全部的結束方案之和奇偶性為 l 的方案數。那麼可以很簡單的轉移。在考慮轉移時候的係數。其實只跟 j,k 是否為0有關係。那麼狀態大大化簡為 dp i 0 1 0 1 0 1 ...