数数(高维DP)】的更多相关文章

T1 数数 [问题描述] fadbec 很善于数数,⽐如他会数将 a 个红球,b 个黄球,c 个蓝球,d 个绿球排成⼀列,任意相邻不同⾊的数⽬. 现在 R 君不知道 fadbec 数的对不对,想让你也算⼀算. 由于数字⽐较⼤,所以请输出除以 109 + 7 的余数. [输入格式] ⼀⾏四个正整数 a,b,c,d. [输出格式] 输出包含⼀个整数,表⽰答案. [样例输入 1] 1 1 1 2 [样例输出 1] 36 [数据规模及约定] 对于前 30% 的数据,1 ≤ a,b,c,d ≤ 3. 对于…
3530: [Sdoi2014]数数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 682  Solved: 364 Description 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3223不是幸运数.    给定N和S,计算不大于N的幸运数个数. Input 输入的第一行包含整数N.    接下来一行一个整数M,…
3530: [Sdoi2014]数数 题意:\(\le N\)的不含模式串的数字有多少个,\(n=|N| \le 1200\) 考虑数位DP 对于长度\(\le n\)的,普通套路DP\(g[i][j]\)即可 对于长度\(=n\)的,需要考虑天际线,\(f[i][j][0/1]\)表示从高开始i位走到节点j,是否卡上界的方案数 需要注意的是前导0的处理,不能出现前导0,所以\(f[0]\)往外转移的时候不能走0 #include <iostream> #include <cstdio&…
BZOJ_1662_[Usaco2006 Nov]Round Numbers 圆环数_数位DP Description 正如你所知,奶牛们没有手指以至于不能玩“石头剪刀布”来任意地决定例如谁先挤奶的顺序.她们甚至也不能通过仍硬币的方式. 所以她们通过"round number"竞赛的方式.第一头牛选取一个整数,小于20亿.第二头牛也这样选取一个整数.如果这两个数都是 "round numbers",那么第一头牛获胜,否则第二头牛获胜. 如果一个正整数N的二进制表示中…
BZOJ_1026_[SCOI2009]windy数_数位DP 题意:windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道, 在A和B之间,包括A和B,总共有多少个windy数? 学一下数位DP. f[i][j]表示i位数以j开头的windy数个数.转移有f[i+1][k]+=f[i][j](abs(j-k)>=2) 答案转成[1~R]-[1~L-1]之后按位枚举,每次枚举到当前位上的数减1. 注意: 1.枚举到两位差2以内时停止枚…
[SDOI2014]数数 题目描述: 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串. 例如当S=(22,333,0233)时,233是幸运数,2333.20233.3223不是幸运数. 给定N和S,计算不大于N的幸运数个数. 输入格式: 输入的第一行包含整数N. 接下来一行一个整数M,表示S中元素的数量. 接下来M行,每行一个数字串,表示S中的一个元素. 输出格式: 输出一行一个整数,表示答案模\(10^{9}+7\)的值. 跟[JSOI2007…
数数 Time Limit: 10 Sec  Memory Limit: 128 MB Description Input 仅一行两个整数L,R Output 仅一行一个整数表示答案. Sample Input 9 28 Sample Output 2 HINT L,R <= 10^9,代码长度限制10k. Source 我们首先想到了如何判断一个数字是否可行,考虑到了一个DP,令 f[i][j] 表示前 i 位,其中一个集合和为 j 的方案,那么 f[i+1][j] 可以转移到 f[i][j+…
3530: [Sdoi2014]数数 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 834  Solved: 434[Submit][Status][Discuss] Description 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3223不是幸运数.    给定N和S,计算不大于N的幸运数个数. Input 输入…
1026: [SCOI2009]windy数 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 6306  Solved: 2810[Submit][Status][Discuss] Description windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包括A和B,总共有多少个windy数? Input 包含两个整数,A B. Output 一个整数 Sample I…
题目 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3223不是幸运数. 给定N和S,计算不大于N的幸运数个数. 题解 有一道scoi2013的数数比这道题丧病多了... 这道题还是比较好做的. 给定范围的时给定了n的长度,并且要求计算数的个数. 所以可以基本确定这是一道数位dp了. 然后又要求有一部分串不能出现 这是经典的在AC自动机上的dp了. 所以我们需要在拿到的…