不要62

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 43588    Accepted Submission(s): 16034

Problem Description
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer)。
杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。
不吉利的数字为所有含有4或62的号码。例如:
62315 73418 88914
都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。
你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车上牌照了。
 
Input
输入的都是整数对n、m(0<n≤m<1000000),如果遇到都是0的整数对,则输入结束。
 
Output
对于每个整数对,输出一个不含有不吉利数字的统计个数,该数值占一行位置。
 
Sample Input
1 100 0 0
 
Sample Output
80
 
Author
qianneng

注意::!!

统计答案按位数统计时 若n的第i位是5,那j就循环0~4 如果第一位是5同样如此,那如果n到58呢?超过五十怎么统计?

其实在统计两位数时,就把0~9统计到了,(00,01,02...09),统计一位数,相当于统计了超过50的数(0~8)。

代码在solve里面

 
/*
数位dp入门
f[i][j]表示一共有i位且最高位为j的符合条件个数
digit[i]表示从右往左数i个是什么数
*/
#include<iostream>
#include<cstdio>
#include<cstring>using namespace std;
int f[10][10],digit[10],len,ans;void init()
{memset(f,0,sizeof f);f[0][0]=1;for(int i=1;i<=7;i++)//位数 for(int j=0;j<10;j++)//当前位 for(int k=0;k<10;k++)//后一位 if(j!=4 && !(j==6&&k==2)) f[i][j]+=f[i-1][k];
}int solve(int n)//统计1~n中符合条件
{init();len=0;ans=0;while(n>0){digit[++len]=n%10;n/=10;}digit[len+1]=0;for(int i=len;i;i--){for(int j=0;j<digit[i];j++)//important{if(j!=4 && !(digit[i+1]==6&&j==2))ans+=f[i][j];}if(digit[i]==4 || (digit[i]==2&&digit[i+1]==6)) break;//低位出现4 62高位不再考虑
    }return  ans;
}int main()
{int l,r;while(scanf("%d%d",&l,&r)){if(l+r==0) break;printf("%d\n",solve(r+1)-solve(l));}return 0;
}

转载于:https://www.cnblogs.com/L-Memory/p/7189656.html

hdu2089不要62(数位dp)相关推荐

  1. hdu2089 不要62 数位dp

    不要62 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  2. [hdu2089]不要62(数位dp)

    题意:求a-b之间满足条件(不含4和62)的数的个数. 解题关键:数位dp入门题. 注意有无limit会出现冲突,所以limit==true的情况下需要直接进行暴力. dp[i][j]表示剩余长度为i ...

  3. HDU2089——不要62 (数位DP)

    杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...

  4. 不要62(HDU-2089)(数位DP模板题)

    杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...

  5. 不要62 ---数位DP

    题意:求m到n中不含62和4的数的个数. 题目链接 思路:数位dp模板求满足的数字或不满足的数字,刚学,就求不满足的数. #include<stdio.h> #include<str ...

  6. Hdu 2089-不要62 数位dp

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=2089 不要62 Time Limit: 1000/1000 MS (Java/Others)    Me ...

  7. HDU 2089 不要62 数位DP

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2089 题目描述: 给定一个区间, 让你求这个区间中所有不带62 或 4 的数的个数 解题思路: 很明 ...

  8. AcWing1085.不要62(数位DP)题解

    题目传送门 题目描述 杭州人称那些傻乎乎粘嗒嗒的人为 6262(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除 ...

  9. HDU2089 不要62【数位DP+记忆化搜索】

    不要62 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submi ...

  10. 数位 DP 入门 (不要 62+windy 数)

    \[I\] 平常的做法是设 \(f_{i,j}\) 为 \(0\)~\(j \times 10^{i-1}\) 的合法个数,这里用某种神奇而快速的做法. 简化题意: 不要 \(6\ 2\) 连在一起的 ...

最新文章

  1. 开发实习生做什么_实习生月薪6W,还有住房补贴!投行前台到底是做什么的?...
  2. CTFshow php特性 web140
  3. jdk官网历史版本下载Oracle账号密码
  4. 【数学和算法】插值方法
  5. 如何正确使用穿线管 穿线管布局解析
  6. CNS级lncRNA权威文章解读及前沿发展
  7. sublime无法输入中文(转)
  8. 快速了解 ASP.NET Core Blazor
  9. 华为5G设备全球分布图曝光:欧洲占总量近6成;地平线发布首款车规级AI芯片,名叫征程2.0;奥迪与比亚迪达成电池供货协议……...
  10. 扩散(信息学奥赛一本通-T1437)
  11. Running Trinity in multiple steps
  12. 瑞幸咖啡股价再大涨超36% 目前总市值约13.87亿美元
  13. 手把手让你实现postfix+extmail+mysql虚拟用户邮件体系
  14. 深入研究java.lang.Class类
  15. 计算机考研高等代数,福大考研经验贴:我的数学考研之路(数学分析和高等代数)...
  16. 谷歌自动广告导致网站样式出错 影响布局
  17. sqlserver 日期与字符串之间的转换
  18. html 制作人物模型,星际科幻人物模型材质教程 Stargazer Character Design Tutorial
  19. 什么是开发环境、测试环境、UAT环境、仿真环境、生产环境?
  20. kali安装teamviewer

热门文章

  1. 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile
  2. Centos7安装 mariadb 最新版
  3. 小D课堂 - 新版本微服务springcloud+Docker教程_4-02 微服务调用方式之ribbon实战 订单调用商品服务...
  4. 电子书下载:MySQL Stored Procedure Programming
  5. Android中实现Activity的透明背景效果
  6. kubernetes ingress-nginx原理
  7. Maven依赖下载速度慢,不用怕,这么搞快了飞起
  8. java基础---线程
  9. 深入理解事件(event)与委托(delegate)
  10. 基于OWIN WebAPI 使用OAUTH2授权服务【授权码模式(Authorization Code)】