lg-dp3

haozexu發表於2024-08-10

lg-dp3

計數的東西有什麼特點、轉化/好的刻畫方式

A Farthest City

題面關鍵資訊:權值為1的最短路 --- bfs --- 分層

那麼顯然加一個點他只能與上一層連,和一層內部連。則設 \(f_{i,j}\) 為 [點數,最後一層點數]

\[f_{i,j}=2^{j\choose 2}\sum_{k=1}^{i-j}{f_{i-j,k}(2^k-1)^j{n-[i\neq n]-(i-j)\choose j}} \]

B CSA [1]

題目關鍵資訊:排列。等價於求數的拓撲序個數。

計數物件性質:父親位置 < 兒子位置

則如果確定根 \(r\) ,那麼可以設 \(f_x\)\(x\) 子樹中的答案。

\[f_x=\sum_{y\in Son(x)}{sz_x+sz_y-1\choose sz_y}f_y \]

本題還有結論為 \(\frac{n!}{\prod sz_x}\)

C [AGC030D] Inversion Sum

計數物件性質:很好維護

其實你要不就是一直維護這個序列(整體來看),要不就是一對一對看。

那麼變成機率,再變成期望就很自然了。所以現在我們要求 \(f(i,j)=\mathbf P(a_i>a_j)\)

考慮在交換的時候維護 \(f\)

當然不轉化可不可以做,是可以的,但是其實很像的。

  1. 期望有線性性

  2. 對機率的維護其實融合了所有的情況

D Shopping

題目關鍵資訊:買東西的點必須是連通塊

澱粉質可以處理連通塊,但是本題也可以按 dfn dp

E [CEOI2016] kangaroo

計數物件特徵:波浪形的(wavy);

排列要是波浪形的,最後一個要是 T,第一個要是 S。

考慮連續段 dp,本質上是我們按照某個順序加數,只確定了相對順序,然後按照某種方式刻畫連續段來維護某種限制。

從小到大加入數,設 \(f_{i,j}\) 表示 [當前加到i,有j段]

此時,有三種方案:

  • 新開一段 \(f_{i,j}=(j-[i>S]-[i>T])f_{i-1,j-1}\) (S前面和T後面不能插入段)

  • 加在某一段前面/後面 非法(分類討論一下可以證明)

  • 合併兩端 \(f_{i,j}=jf_{i-1,j-1}\)

F Tenzing and Random Operations

容易得到式子,但是沒啥用,考慮組合意義

這個問題就更具有 dp 多層決策的特徵。令 \(f_{i,j}\) 表示 [走過 \(1\to i\),已經用了 \(j\) 個工具]。

那麼:

  • 不放置新的工具,直接走 \(a_{i+1}f_{i,j}\to f_{i+1,j}\)

  • 用獲得過的工具,\(jvf_{i,j}\to f_{i+1,j}\)

  • 再放置一個工具,\(f_{i,j}\times\frac{i+1}{n}\times(m-j)\times v\to f_{i+1,j+1}\)

G PERIODNI

由於原來這個表格是不規則的,這是不好處理的,考慮劃分成若干矩形建笛卡爾樹

在一個小矩形內部的填數方案是容易處理的,對於列的限制,建一棵笛卡爾樹,然後做樹形 dp 處理。

H Distributing Integers

等價於前面 B 題 CSA

I #(subset sum = K) with Add and Erase

要求動態維護 K 的拆分數。只有加入是很簡單的,如果存在刪除,我們就強制從 \(-x\) 轉移。


可撤銷揹包,多項式理解方法:

加一個----兩項的多項式乘法,刪一個----兩項的多項式除法。

J [COCI2006-2007#3] BICIKLI

到達不了環就 dp,有環就分討:

  • 若環可以到達2 INF (取反圖判斷)

  • 不可以就不必訪問環

K [HNOI2019] 校園旅行

大boss BLACK

\(30\%\)

\(\mathcal O(m^2)\)

\(100\%\)

Hint: 縮減邊的數量,使其與點數同級

現在考慮對於兩邊,我們要做的就是同色來連續子串對應長度相等。

考慮如何能做到。

從變化的角度看,其實對於一個同色聯通塊來說,它為連入的點提供的能力就在於:

  1. 如果他是偶環,那麼你可以無損地獲得任何一個更大的、相同奇偶性連續段,然而如果在保證聯通性的同時,即使只有一條邊,也可以達到這個目的。

  2. 如果他是奇環,那麼你可以獲得改變奇偶性的機會,你可以無損地到達任何一個更大的連續段,如果是這樣,那麼在保證連通性的時候,連續走一個自環也能達到相同的效果

所以我們可以根據上面的觀察削減邊數。


  1. 本題與下面 H 題等價。 ↩︎