hdu2089 不要62 数位dp
不要62
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 42973 Accepted Submission(s): 15726
杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。
不吉利的数字为所有含有4或62的号码。例如:
62315 73418 88914
都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。
你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车上牌照了。
#include<iostream> #include<algorithm> #include<cstring> #include<cmath> #include<cstdio> using namespace std; typedef long long ll; #define maxn 100010 int dp[10][10],d[10]; void init() {dp[0][0] = 1;for(int i=1;i<=7;i++)for(int j=0;j<=9;j++)for(int k=0;k<=9;k++){if(j!=4&&!(j==6&&k==2))dp[i][j] += dp[i-1][k];//把每一位上的下一位有多少个可以的数算出来 } } int solve(int num) {int ans = 0,len = 0;while(num){len++;d[len] = num%10;num /= 10;}d[len+1] = 0;for(int i=len;i>=1;i--){for(int j=0;j<d[i];j++){if(d[i+1]!=6||j!=2)ans += dp[i][j];//加上除了d[i]这位数之外的其他数的和 }if(d[i]==4||(d[i+1]==6&&d[i]==2))break;//如果d[i]不满足条件的话就可以直接结束循环,不必再加最后一位 }return ans; } int main() {int n,m;init();while(cin >> n >> m){if(!n&&!m)break;printf("%d\n",solve(m+1)-solve(n));//注意m+1,求的是小于m的数,所以求[0,m]之间的数时要加一 }return 0; }
转载于:https://www.cnblogs.com/l609929321/p/7044444.html
hdu2089 不要62 数位dp相关推荐
- [hdu2089]不要62(数位dp)
题意:求a-b之间满足条件(不含4和62)的数的个数. 解题关键:数位dp入门题. 注意有无limit会出现冲突,所以limit==true的情况下需要直接进行暴力. dp[i][j]表示剩余长度为i ...
- HDU2089——不要62 (数位DP)
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...
- 不要62(HDU-2089)(数位DP模板题)
杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍 ...
- 不要62 ---数位DP
题意:求m到n中不含62和4的数的个数. 题目链接 思路:数位dp模板求满足的数字或不满足的数字,刚学,就求不满足的数. #include<stdio.h> #include<str ...
- Hdu 2089-不要62 数位dp
题目: http://acm.hdu.edu.cn/showproblem.php?pid=2089 不要62 Time Limit: 1000/1000 MS (Java/Others) Me ...
- HDU 2089 不要62 数位DP
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2089 题目描述: 给定一个区间, 让你求这个区间中所有不带62 或 4 的数的个数 解题思路: 很明 ...
- AcWing1085.不要62(数位DP)题解
题目传送门 题目描述 杭州人称那些傻乎乎粘嗒嗒的人为 6262(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除 ...
- HDU2089 不要62【数位DP+记忆化搜索】
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- 数位 DP 入门 (不要 62+windy 数)
\[I\] 平常的做法是设 \(f_{i,j}\) 为 \(0\)~\(j \times 10^{i-1}\) 的合法个数,这里用某种神奇而快速的做法. 简化题意: 不要 \(6\ 2\) 连在一起的 ...
最新文章
- CentOS 6 EOL后如何更换yum源?
- PostgreSQL 10.1 手册_部分 II. SQL 语言_第 10 章 类型转换_10.4. 值存储
- Selenium支持高版本的FireFox
- python爬虫程序实例-10个python爬虫入门实例
- tcpdump抓取HTTP包
- 如何到SAP官网上查询某产品的roadmap - 路线图
- ELK+Kafka部署
- 怎么使用小爱同学音响_智能音响购买指南!!!
- Attribute鲜为人知的两个特性记录
- 工作于内存和文件之间的页缓存, Page Cache, the Affair Between Memory and Files
- 军事方面的软件系统与瀑布模型
- form表单无刷新提交文件(iframe)
- Error: Plugin/Preset files are not allowed to export objects, only functions……
- 入门级微单反性能对比
- 虐心的《西部世界》第二季:我看哭了 人类和AI傻傻分不清
- php怎么实现网页切图,CSS_网站页面切图与CSS注意事项,一、Web页面切图
1) Web页面的 - phpStudy...
- 在马克思手稿中有一道趣味的数学问题:一共有30个人,可能包括男人,女人和小孩。他们在一家饭馆吃饭共花了50先令,其中每个男人花3先令,每个女人花2先令,每个小孩花1先令。请问男人、女人和小孩各几人?
- 从排名看主流半导体厂商在3G市场的策略与心态
- 淘宝新店流量如何从0到1000
- 中兴笔试题目总结(四)软件工程部分
热门文章
- php退出页面父元素,jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码...
- python和matlab哪个实现数值计算方法_python和matlab如何选择?
- c语言测机器运行时间,C语言clock()测试函数运行时间
- php 替换某一行,PHP中如何替换换行符?
- ue4 classuobject没有成员beginplay_关于UE4使用的一些想法(一)
- vc 6.0 显示文件全路径_Linux常用命令大全(非常全!!!)
- python的字符串的转义
- VS2019中在源文件中如何使用自己写的头文件(保姆级教程)
- QT中Qpixmap与QImage的转化
- eclipse新建项目有红叉_selenum+java+eclipse环境搭建和浏览器驱动配置