p2167 [sdoi2009]bill的挑戰
sheng bill不僅有驚人的心算能力,還可以輕鬆地完成各種統計。在昨天的比賽中,你憑藉優秀的程式與他打成了平局,這導致sheng bill極度的不滿。於是他再次挑戰你。這次你可不能輸!(乙個不服輸讓我這個ruoji碼了倆小時)
這次,比賽規則是這樣的:
給n個長度相同的字串(由小寫英文本母和『?』組成),\(s_1,s_2,s_3......s_n\),求與這n個串中的剛好k個串匹配的字串t的個數(答案模1000003)。
若字串\(s_x\)(1≤x≤n)和t匹配,滿足以下條件:
1.\(s_x.length = t.length\)。
2.對於任意的\(1≤i≤s_x.length\),滿足\(s_x[i]='?'\)或者\(s_x[i]=t[i]\)。
其中t只包含小寫英文本母。
本題包含多組資料。
第一行:乙個整數t,表示資料的個數。
對於每組資料:
第一行:兩個整數,n和k(含義如題目表述)。
接下來n行:每行乙個字串。
\(t ≤ 5,n ≤ 15\),字串長度≤ 50。
對於每組資料,輸出方案數目(共t行)
5
3 3???r???
???????
???????
3 4???????
?????a?
???????
3 3???????
?a??j??
????aa?
3 2a??????
???????
???????
3 2???????
???a???
????a??
91485200
871234
67018
#includeusing namespace std;
const int mod=1e6+3;
const int maxn=100010;
int f[50+5][1<<15],g[50+5][30];
char s[16][50+5];
int t,n,m;
int main()
}} int lim=(1
for(int i=0;i}
} int ans=0;
for(int i=0;iif(tot==m)ans=(ans+f[len][i])%mod;
} printf("%d\n",ans);
}}
BZOJ1879bill的挑戰 狀壓DP
本題包含多組資料。第一行 乙個整數t,表示資料的個數。對於每組資料 第一行 兩個整數,n和k 含義如題目表述 接下來n行 每行乙個字串。t 5,m 15,字串長度 50。output 如題sample input 3 3?r?3 4?a?3 3?a?j?aa?3 2a?3 2?a?a?sample ...
大挑戰!狀壓dp!
1349.參加考試的最大學生數 給你乙個 m n 的矩陣 seats 表示教室中的座位分布。如果座位是壞的 不可用 就用 表示 否則,用 表示。學生可以看到左側 右側 左上 右上這四個方向上緊鄰他的學生的答卷,但是看不到直接坐在他前面或者後面的學生的答卷。請你計算並返回該考場可以容納的一起參加考試且...
狀壓dp 玉公尺田 狀壓dp
相關 強相關 327.玉公尺田 狀壓dp 小國王 狀壓dp 是井字形,本題是十字形。思路 狀態計算 時間複雜度 n 2 n 2n o n 22n 12 2 24n 2 n 2 n o n2 12 2 n 2n 2 n o n22n 12 224 看著妥妥超時,但是裡面合法狀態很少 依舊可以過 在此,...