
计数
文章平均质量分 84
fcbruce
Veni,Vidi,Vici
展开
-
HDU 1978 How many ways (DP,计数)
http://acm.hdu.edu.cn/showproblem.php?pid=1978 How many ways Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 3022 Accepted Submission(s原创 2014-10-30 11:27:08 · 1069 阅读 · 0 评论 -
HDU 2825 Wireless Password (AC自动机,DP)
题意: 给出m个模式串,要求构造一长度为n的文本串,至少包括k种模式串,求有多少种可能的模式串。 分析: m个模式串构建AC自动机,然后要在这AC自动机中走n步,至少经过k个单词结点。因为m<=10,显然可以用状压表示已经有哪几个单词结点。用dp[i][j][k]表示走了i步到AC自动机中的第j个结点,单词状态为k,由计数原理可推出状态转移方程:dp[i][j][k]=sum(dp[i-1][last_j][last_k]),last_j表示可以抵达第j个结点的上一个结点,last_k表示上一步的状态;因为原创 2014-11-20 11:19:33 · 1673 阅读 · 0 评论 -
POJ 1625 Censored!(AC自动机,DP)
题意: 给出一n种字符的字典,有k个禁用的单词,问能组成多少个不同的长度为m的合法字符串。 分析: 构建出AC自动机后在里面走m步有不经过单词结点有多少种方案,用dp[i][j]表示走了i步到第j个结点的方案数,根据计数原理可得状态转移方程:dp[i][j]=sum(dp[i][last_j]),其中last_j表示能走到j结点的前趋们,j不为单词结点。要注意此题要用到高精度,而且要用unsigned char存储。原创 2014-11-20 15:19:12 · 1573 阅读 · 1 评论