暴搜或者字典樹,但是因為輸出所有的方案而不是方案數,不管什麼做法都逃不過輸出,所以都差不多
sol1:記憶化搜尋 當列舉方案時,f[i]表示已經把字串的前i個字母都拼好的情況下有多少方案
考慮從第i+1個字元開始到j是乙個給定的單詞 如果有這樣的j的話就可以轉移
然後開乙個vector把每乙個狀態下的方案存進去
sol2:字典樹
對單詞建trie樹,每次碰到結束標記時就再回頭走trie樹,開乙個佇列記錄方案
orz lz神仙爆搜90碾我標程
#include#include#include#include#include#includeusing namespace std;
char s[205],c[205];
int cnt=1;
char tree[6050][27];
bool flag[6050];
int n;
char out[205];
int tot;
void build()
now=tree[now][ch];
}flag[now]=1;
}void query(int noww)
if(i!=len-1)
else if(i==len-1) }}
}int main()
query(0);
return 0;
}
YCH的模擬賽 T1
括號序列問題,往往就是把左括號看成 1,右括號看成 1,我們只需要保證任意乙個字首大於等於0,且總和為0,就代表是個合法括號序列了。令 f i j 表示當前到第 i 個字元,現在的字首和 j 那麼分三種情況考慮。若第 i 1 個字元是左括號,則能轉移到 f i 1 j 1 若第 i 1 個字元是右括...
20180711模擬賽T3 聚變
檔名 fusion 題目型別 傳統題 時間限制 3秒 記憶體限制 256mb 編譯優化 無 知名科學家小a在2118年在計算機上實現了模擬聚變的過程。我們將她研究的過程簡化。核子共有26種,可以用a到z共26個字母表示。核子聚變的過程可以用乙個字串描述。按照順序從左到右的順序,假如有兩個相同核子相鄰...
NOIP歡樂模擬賽 T3 解題報告
3 小澳的葫蘆 calabash.cpp c pas 題目描述 小澳最喜歡的歌曲就是 葫蘆娃 一日表演唱歌,他盡了洪荒之力,唱響心中聖歌。隨之,小澳進入了葫蘆世界。葫蘆世界有n個葫蘆,標號為1 n。n個葫蘆由m條藤連線,每條藤連線了兩個葫蘆,這些藤構成了一張有向無環圖。小澳爬過每條藤都會消耗一定的能...