HDU 2089 不要62(数位DP)
来源:互联网 发布:ug8.0编程教程入门 编辑:程序博客网 时间:2024/05/19 16:35
跟这一篇差不多 http://blog.csdn.net/qq_27925701/article/details/50650199
#include<map>#include<set>#include<queue>#include<stack>#include<math.h>#include<string>#include<vector>#include<stdio.h>#include<string.h>#include<iostream>#include<algorithm> using namespace std;typedef long long LL;#define maxn 1005#define f(x) (x*1.0)#define inf 0x3f3f3f3f#define maxm maxn*maxn#define min(a,b) (a>b?b:a)#define max(a,b) (a>b?a:b)#define lowbit(x) (x&(-x))#define cheak(i) printf("%d ",i)#define lson(x) (splay[x].son[0])#define rson(x) (splay[x].son[1])#define rfor(i,a,b) for(i=a;i<=b;++i)#define lfor(i,a,b) for(i=a;i>=b;--i)#define mem(a,b) memset(a,b,sizeof(a))#define mec(a,b) memcpy(a,b,sizeof(b))//0 不含//1 不含且最高位是2//2 含不吉利数字 int dp[25][3];void init(){ dp[0][0]=1; dp[0][1]=dp[0][2]=0; int i; rfor(i,1,20) { dp[i][0]=dp[i-1][0]*9-dp[i-1][1]; dp[i][1]=dp[i-1][0]; dp[i][2]=dp[i-1][2]*10+dp[i-1][0]+dp[i-1][1]; }}int A[25];int solve(int x){ int len=0,ans=0,i; while(x) { A[++len]=x%10; x/=10; } A[len+1]=0; bool flag=false; lfor(i,len,1) { ans+=dp[i-1][2]*A[i]; if(flag) ans+=dp[i-1][0]*A[i]; else { if(A[i]>4) ans+=dp[i-1][0]; if(A[i]>6) ans+=dp[i-1][1]; if(A[i+1]==6&&A[i]>2) ans+=dp[i][1]; } if(A[i]==4||A[i]==2&&A[i+1]==6) flag=true; } if(flag) ans++; return ans;}int main(){ int l,r; init(); while(~scanf("%d%d",&l,&r)) { if(!l&&!r) break; l--; int ans=r-l; l=solve(l); r=solve(r); ans-=r-l; printf("%d\n",ans); } return 0;}
0 0
- hdu 2089 不要62(数位dp)
- hdu 2089(不要62)数位DP
- HDU-#2089不要62(数位DP)
- hdu 2089 不要62 (数位dp)
- HDU 2089 不要62(数位 dp)
- hdu 2089 不要62(数位DP)
- HDU 2089 不要62(数位DP)
- hdu 2089 不要62(数位dp)
- hdu 2089 不要62(数位dp)
- HDU 2089 不要62(数位DP)
- HDU 2089 不要62(数位dp)
- HDU 2089 不要62(数位DP)
- hdu 2089 不要62(数位dp)
- HDU 2089 不要62 (数位DP)
- hdu 2089 不要62(数位dp)
- hdu 2089 不要62 (数位DP)
- 【HDU 2089】不要62(数位dp)
- HDU-2089 不要62 (数位DP)
- HDU 3315 My Brute(费用流)
- 计蒜客 挑战难题 最后一个单词的长度
- 南阳oj 题目2—括号配对问题
- Struts 2
- 水波动画的实现
- HDU 2089 不要62(数位DP)
- 大数据学习相关网站
- Python图像处理库PIL的Image模块介绍(一)
- Android 开发笔记——通过 Intent 传递类对象
- Spring
- 例题6-10 UVa699 The Falling Leaves(二叉树)
- poj3723 Conscription Kruscal算法最大生成森林
- mysql使用“.frm”文件恢复表结构
- UESTC 250 windy数 (数位DP)