题解——HDU 2089 不要62(数位DP)
最近在学数位DP
应该是入门题吧
设\( dp[i][0/1] \)表示到第\( i \)位时,前一位是否是6的满足条件的数的个数
然后就是套路
注意\( limit \)的限制条件以及转移时候信息的记录,不能遗漏信息
代码写的记忆化搜索
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
int dp[][],a[];
int dfs(int pos,int pre,int limit,int state){
if(pos==-)
return ;
if(!limit&&dp[pos][state]!=-)
return dp[pos][state];
int up = limit?a[pos]:;
int mid=;
for(int i=;i<=up;i++){
if(i==)
continue;
if(pre==&&i==){
continue;
}
mid+=dfs(pos-,i,limit&&i==a[pos],i==);
}
if(!limit)
dp[pos][state]=mid;
return mid;
}
int solve(int x){
int con=;
memset(dp,-,sizeof(dp));
memset(a,,sizeof(a));
while(x){
a[con]=x%;
x/=;
con++;
}
return dfs(con,-,true,false);
}
int main(){
int l,r;
while(scanf("%d %d",&l,&r)==&&l!=&&r!=)
printf("%d\n",solve(r)-solve(l-));
return ;
}
题解——HDU 2089 不要62(数位DP)的更多相关文章
- HDU 2089 - 不要62 - [数位DP][入门题]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 Time Limit: 1000/1000 MS (Java/Others) Memory Li ...
- Hdu 2089 不要62 (数位dp入门题目)
题目链接: Hdu 2089 不要62 题目描述: 给一个区间 [L, R] ,问区间内不含有4和62的数字有多少个? 解题思路: 以前也做过这个题目,但是空间复杂度是n.如果数据范围太大就GG了.今 ...
- [hdu 2089] 不要62 数位dp|dfs 入门
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 题意:求[n, m]区间内不含4和62的数字个数. 这题有两种思路,直接数位dp和dfs 数位d ...
- HDU 2089 不要62 数位DP模板题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 参考博客:https://www.cnblogs.com/HDUjackyan/p/914215 ...
- HDU 2089 不要62(数位DP·记忆化搜索)
题意 中文 最基础的数位DP 这题好像也能够直接暴力来做 令dp[i][j]表示以 j 开头的 i 位数有多少个满足条件 那么非常easy有状态转移方程 dp[i][j] = sum{ dp[ ...
- hdu 2089 不要62 数位dp
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- hdu 2089 不要62 (数位dp基础题)
不要62 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submis ...
- hdu 2089不要62 (数位dp)
Problem Description 杭州人称那些傻乎乎粘嗒嗒的人为62(音:laoer). 杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来 ...
- hud 2089 不要62 (数位dp)
#include<stdio.h> #include<string.h> #include<math.h> #define max 10 ]; int number ...
随机推荐
- mysql避免脏读
mysql避免脏读 在MySQL的InnoDB中,预设的Tansaction isolation level 为REPEATABLE READ(可重读) 在SELECT 的读取锁定主要分为两种方式 ...
- modelsim仿真正确FPGA运行不正确的可能原因 - cm4写寄存器错
困住整整一周了,工作进行不下去,中午偶遇导师,指导意见是有两种可能: 1. FPGA编译器优化代码,可以考虑把综合过程中所有的warning排查一下 2. verilog里有不可综合的语句. 又及 ...
- python pymssql 连接数据库
1)写在前面 远程连接数据库的时候,端口前面都是用的逗号, 因为惯性思维, 就傻傻的把 ip+,+端口 赋值给server了,然后一直报错, pymssql.InterfaceError: Co ...
- L1正则和L2正则的比较分析详解
原文链接:https://blog.csdn.net/w5688414/article/details/78046960 范数(norm) 数学上,范数是一个向量空间或矩阵上所有向量的长度和大小的求和 ...
- Failed to start component [StandardEngine[Tomcat].StandardHost[localhost]]
1.问题场景描述:一个maven项目启动时候,偶尔会报tomcat的这个错误(如图:) 随机报错,有时频率很高,要一直重新启动很多次可能还是启动不了,有时不报错.. 2.解决过程:网上各种寻找解决办法 ...
- make: *** /lib/modules/3.10.0-327.el7.x86_64/build: 没有那个文件或目录。 停止。
1.问题: [root@localhost]# make make -C /lib/modules/-.el7.x86_64/build M=/home/csri/poc/adore modules ...
- 51nod 1130 N的阶乘的长度 V2(斯特林近似)
输入N求N的阶乘的10进制表示的长度.例如6! = 720,长度为3. Input 第1行:一个数T,表示后面用作输入测试的数的数量.(1 <= T <= 1000) 第2 - T + ...
- Autel MaxiSYS PRO MS908P Diagnostic System with Wireless VCI J-2534
You’re a professional mechanic, an enthusiast or and mechanic shop owner? Then you are here on the r ...
- Selenium 常用定位对象元素的方法
常见定位对象元素的方法 在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素.其中By类的常用定位方 ...
- MyEclipse与Eclipse配置清单
MyEclipse与Eclipse配置清单 1.编码设置 workspace -> 设置全局编码utf-8 修改JSP编码(Encoding)为UTF-82.Java配置 格式 ...