【数位DP】Hdu 3652:B-number
B-number
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3434 Accepted Submission(s): 1921
100
200
1000
1
2
2
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring> using namespace std; int f[][][][]; int count(int x,int y)
{
for(int i=;i<x;i++)
y=y*%;
return y;
} void DP()
{
for(int i=;i<=;i++)
f[][][i][i]=;
for(int i=;i<=;i++)
for(int j=;j<=;j++)
{
int mod=count(i,j);
for(int kk=;kk<=;kk++)
for(int ll=;ll<;ll++)
{
if(j== && kk==)f[i][][j][ll]+=f[i-][][kk][(ll-mod+)%];
else f[i][][j][ll]+=f[i-][][kk][(ll-mod+)%];
f[i][][j][ll]+=f[i-][][kk][(ll-mod+)%];
}
}
} int get(int x)
{
int num[],len=,res=;
while(x)
{
num[++len]=x%;
x/=;
}
for(int i=;i<num[len];i++)
res+=f[len][][i][];
for(int i=;i<=len-;i++)
for(int j=;j<=;j++)
res+=f[i][][j][];
int mod=count(len,num[len]),flag=;
for(int i=len-;i>=;i--)
{
for(int j=;j<num[i];j++)
{
res+=f[i][][j][(-mod)%];
if(flag || (j== && num[i+]==) )res+=f[i][][j][(-mod)%];
}
if(num[i]==&&num[i+]==)flag=;
mod=(mod+count(i,num[i]))%;
}
return res;
} int main()
{
int r;
DP();
while(~scanf("%d",&r))
printf("%d\n",get(r+));
return ;
}
【数位DP】Hdu 3652:B-number的更多相关文章
- 数位DP || Gym 101653R Ramp Number
每一位都大于等于前一位的数叫Ramp Number 给一个数,如果不是Ramp Number输出-1,如果是Ramp Number输出比它小的Ramp Number的个数 只和每一位上的数字有关 #i ...
- 2019年9月训练(壹)数位DP (HDU 2089)
开学之后完全没时间写博客.... HDU 2089 不要62(vjudge) 数位DP 思路: 题目给出区间[n,m] ,找出不含4或62的数的个数 用一个简单的差分:先求0~m+1的个数,再减去0~ ...
- 数位DP HDU - 2089 不要62
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- [数字dp] hdu 3565 Bi-peak Number
意甲冠军: 为了范围[X,Y],的最大位数的范围内的需求高峰和值多少. 双峰是为了满足一些规定数量 你可以切两 /\ /\ 形式. 思维: dp[site][cur][ok] site地点 面的数 ...
- hdu 5898 odd-even number 数位DP
传送门:hdu 5898 odd-even number 思路:数位DP,套着数位DP的模板搞一发就可以了不过要注意前导0的处理,dp[pos][pre][status][ze] pos:当前处理的位 ...
- HDU 5787 K-wolf Number (数位DP)
K-wolf Number 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5787 Description Alice thinks an integ ...
- 【HDU 3652】 B-number (数位DP)
B-number Problem Description A wqb-number, or B-number for short, is a non-negative integer whose de ...
- 【HDU 3709】 Balanced Number (数位DP)
Balanced Number Problem Description A balanced number is a non-negative integer that can be balanced ...
- Hdu 3652 B-number (同余数位DP)
题目链接: Hdu 3652 B-number 题目描述: 给出一个数n,问 [1, n]区间内有几个数能被13整除并且还有13这个子串? 解题思路: 能整除的数位DP,确定好状态随便搞搞就能过了.d ...
- hdu 3652 【数位dp】
hdu 3652 题意:求1到n中包含'13'('13'不一定连续)且能被13整除的数的个数. 这是我第一道比较了能看懂的数位dp.定义状态dp[pos][res][sta]表示处理到第pos位,模的 ...
随机推荐
- Java Concurrency - invokeAny & invokeAll
Running multiple tasks and processing the first result A common problem in concurrent programming is ...
- Linux 命令 - id: 显示用户的身份标识
命令格式 id [OPTION]... [USERNAME] 命令参数 -a 忽略,仅为与其他版本相兼容而设计. -Z, --context 仅显示当前用户的安全环境. -g, --group 仅显示 ...
- Warrior!之家与Warrior!博客网站发布
这个网站从大一下学期就开始做,断断续续,一开始感觉无从下手,做了一个草稿便停止了.最近再拿回来,感觉并没有什么难度,便把它做完了,采用ajax页内跳转,对几个搜索引擎都有seo,目前谷歌搜索“Warr ...
- 小生经验贴 --- adapter的数据更新
如果你的UI是GridView ListView等需要用到adapter添加数据的控件 那么有时候里面的数据改变了 List<>内容改变了 那就要更新数据 关于adapter的数据更新 a ...
- 第一次使用github很高端的赶脚
- jquery---helloworld
style.css
- presentViewController: 如何不覆盖原先的 viewController界面
PresentViewController 如何不遮挡住原来的viewController界面呢? 可能有时候会遇到这种需求,需要弹出一个功能比较独立的视图实现一些功能,但是却不想单纯添加一个View ...
- C#判断输入的是否是汉字
第一种方法:正则表达式 string text = "是不是汉字"; for (int i = 0; i < text.Length; i++) { if (Regex.Is ...
- pl/sql developer 中文字段显示乱码
在windows中创建一个名为“NLS_LANG”的系统环境变量,设置其值为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,然后重新启动 pl/sql developer,这样 ...
- 九度OJ 1541 二叉树【数据结构】
题目地址:http://ac.jobdu.com/problem.php?pid=1541 题目描述: 旋转是二叉树的基本操作,我们可以对任意一个存在父亲节点的子节点进行旋转,包括如下几种形式(设被旋 ...