FZU 2030 括號問題(搜尋)

2021-08-11 11:03:16 字數 802 閱讀 7006

problem 2030 括號問題

給出乙個字串,其中包括3種字元: 『(『, 『)』, 『?』.其中?表示這個字元可以是』(『也可以是』)』. 現在給出字串s,你可以在』?』處填寫』(『 或者 『)』,當然隨意填寫得到的序列可能是括號不匹配的。例如」(?」,如果你填寫』(『那麼」((「是括號不匹配的! 現在你的任務是確定你有多少種填寫方案,使得最終的字串是括號匹配的!2種方案是不同的,當2種方案中至少存在1個填寫字元是不同的。 例如,對於」((??))」,我們可以得到2種方案: 「((()))」, 「(()())」。

資料報含多組測試資料 第一行輸入乙個字串s(s的長度不超過16)。 

輸出乙個整數,表示合法的填寫方案數。

((??)) 2

福州大學第八屆程式設計競賽

最多2^16個搜尋。

#include #include #include #include #include #include #include #include using namespace std;

const int maxn =555;

const int inf = 0x3f3f3f3f;

string s;

int ans;

void dfs(int now,int left,int right)

if(s[now]=='(')else if(s[now]==')')else

}int main()

{ while(cin>>s){

ans=0;

int f=0;

for(int i=0;i

FZU 2030 括號問題 (DP)

problem 2030 括號問題 給出乙個字串,其中包括3種字元 其中?表示這個字元可以是 也可以是 現在給出字串s,你可以在 處填寫 或者 當然隨意填寫得到的序列可能是括號不匹配的。例如 如果你填寫 那麼 是括號不匹配的!現在你的任務是確定你有多少種填寫方案,使得最終的字串是括號匹配的!2種方案...

FZU2030 括號匹配

題目大意 略 題目思路 資料範圍很小,可以搜尋,但是如果資料範圍較大則只能dp 用二維陣列表示狀態dp i j 表示掃瞄到第i個字元時有j個 還未完成匹配,而答案就是dp len 1 0 len表示字串長度,dp len 1 0 表示掃瞄完最後乙個字元後沒有未匹配的 include include ...

FZU 2030 括號問題 爆搜 DP

problem 2030 括號問題 給出乙個字串,其中包括3種字元 其中?表示這個字元可以是 也可以是 現在給出字串s,你可以在 處填寫 或者 當然隨意填寫得到的序列可能是括號不匹配的。例如 如果你填寫 那麼 是括號不匹配的!現在你的任務是確定你有多少種填寫方案,使得最終的字串是括號匹配的!2種方案...