hdu 2089 不要62
来源:互联网 发布:wpf treeview数据绑定 编辑:程序博客网 时间:2024/05/07 12:33
Problem Description
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)。
杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。
不吉利的数字为所有含有4或62的号码。例如:
62315 73418 88914
都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。
你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车上牌照了。
Input
输入的都是整数对n、m(0
这里写代码片#include<iostream>#include<cstring>#include<string>#include<algorithm>using namespace std;int a[1000000];int fun(int x){ while(x) { if(x%10==4) return 0; if(x%100==62) return 0; x/=10; } return 1;} void init() { for(int i=1;i<=1e6;i++) { if(fun(i)) a[i]=a[i-1]+1; else a[i]=a[i-1]; } }int main(){ a[0]=0; init(); int n,m; while(cin>>n>>m&&n&&m) { cout<<a[m]-a[n-1]<<endl; } return 0;}
数位dp解法:
dp[i][j] 表示符合i位数,并最高为j的所有解;//需留意此处;
所以当j!=4时,dp[i][j]=dp[i-1][0]+dp[]i-1][1]+…………+dp[i-1][9];
列如dp[2][5] 是2999到2000 之间的解
代码如下:
这里写代码片#include<iostream>#include<cstring>#include<string>using namespace std;const int maxn=20;int dp[maxn][maxn];int num(int n){ int len=0;//代表当前所在的位数 int digit[11];//每个数的每一位数字 while(n) { digit[++len]=n%10; n/=10; } digit[len+1]=0;//高一位取0 int ans=0; for(int i=len;i>=1;i--) { for(int j=0;j<digit[i];j++) if(j!=4&&(digit[i+1]==6&&j==2)) ans+=dp[i][j]; if(digit[i]==4||(digit[i+1]=3&&digit[i]==7)) break; } return ans;}int main() { memset(dp,0,sizeof(dp)); dp[0][0]=1; for(int i=1;i<=10;i++)//代表数的位数: { for(int j=0;j<10;j++)//i位最高位是j; for(int k=0;k<10;k++)//i-1位最高位的情况 if(j!=4&&!(j==6&&K==2)) dp[i][j]+=dp[i-1][k]; } int l,r; while(cin>>l>>r) cout<<num(r+1)-num(l)<<endl; return 0;}
2 0
- hdu 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- HDU 2089 不要62
- HDU 2089 不要62
- HDU 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- HDU:2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- hdu 2089 不要62
- HDU 2089 不要62
- hdu 2089 不要62
- hdu-2089-不要62
- 移植uboot到FL2440开发板
- PHP从入门到精通 读书笔记
- 在头文件中定义变量以及static变量意味着什么?全局变量要如何正确使用?关键字extern要怎么用?
- 【android】ListView 的 transcriptMode 选项
- 项目2-就拿胖子说事
- hdu 2089 不要62
- 自定义一个SharedPreferences工具类
- 【Struts2进阶】Struts2深度解析ModelDriven原理
- c++使用库函数判断字符是否是数字
- Hibernate学习——(五)基于Annotation的一对一外键映射
- web前端性能优化
- Problem B: 复制字符串
- 浅谈我对协程的理解
- PHP开发典型模块