hdu2089不要62(数位dp)
不要62
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 43588 Accepted Submission(s): 16034
杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。
不吉利的数字为所有含有4或62的号码。例如:
62315 73418 88914
都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。
你的任务是,对于每次给出的一个牌照区间号,推断出交管局今次又要实际上给多少辆新的士车上牌照了。
注意::!!
统计答案按位数统计时 若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)相关推荐
- hdu2089 不要62 数位dp
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- [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\) 连在一起的 ...
最新文章
- 开发实习生做什么_实习生月薪6W,还有住房补贴!投行前台到底是做什么的?...
- CTFshow php特性 web140
- jdk官网历史版本下载Oracle账号密码
- 【数学和算法】插值方法
- 如何正确使用穿线管 穿线管布局解析
- CNS级lncRNA权威文章解读及前沿发展
- sublime无法输入中文(转)
- 快速了解 ASP.NET Core Blazor
- 华为5G设备全球分布图曝光:欧洲占总量近6成;地平线发布首款车规级AI芯片,名叫征程2.0;奥迪与比亚迪达成电池供货协议……...
- 扩散(信息学奥赛一本通-T1437)
- Running Trinity in multiple steps
- 瑞幸咖啡股价再大涨超36% 目前总市值约13.87亿美元
- 手把手让你实现postfix+extmail+mysql虚拟用户邮件体系
- 深入研究java.lang.Class类
- 计算机考研高等代数,福大考研经验贴:我的数学考研之路(数学分析和高等代数)...
- 谷歌自动广告导致网站样式出错 影响布局
- sqlserver 日期与字符串之间的转换
- html 制作人物模型,星际科幻人物模型材质教程 Stargazer Character Design Tutorial
- 什么是开发环境、测试环境、UAT环境、仿真环境、生产环境?
- kali安装teamviewer
热门文章
- 解决Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile
- Centos7安装 mariadb 最新版
- 小D课堂 - 新版本微服务springcloud+Docker教程_4-02 微服务调用方式之ribbon实战 订单调用商品服务...
- 电子书下载:MySQL Stored Procedure Programming
- Android中实现Activity的透明背景效果
- kubernetes ingress-nginx原理
- Maven依赖下载速度慢,不用怕,这么搞快了飞起
- java基础---线程
- 深入理解事件(event)与委托(delegate)
- 基于OWIN WebAPI 使用OAUTH2授权服务【授权码模式(Authorization Code)】