題意:求有多少合法括號序列包含給定括號序列s,且|p|+|s|+|q|=n枚舉
瓶頸:考試的時候忘了卡特蘭數的定義了。。。+1和-1的次數相等,最後必定會歸零且保證任意時刻前綴和>=0。
n-m<=2000,即空位只有2000。
爲了使狀態具體化,想到枚舉|p|及p中的'('個數。這樣咱們就能推知|q|和q中的左括號個數。
對於p,爲了填上s中的負數,左右括號個數可能不相同。
那麼就轉化成《網格》,二維表示+1 -1,不合法方案翻折後能夠表示。
通用:設+1個數爲n,-1個數爲m
用完全部數且保證任意時刻前綴和>=0的方案數爲$C_{n+m}^{n}-C_{n+m}^{m-1}$
右邊的部分視爲將座標系上移,從0出發到-ned。
而後注意特判右邊不能使前綴和回到0的狀況。