/*
记忆化搜索,第二维判断是否是6
*/
#include<stdio.h>
#include<string.h>
#define N 9
int dp[N][2],digit[N];
int dfs(int len,int cnt,int ok) {//cnt代表是否是6,ok代表前一个是当前为最大值,并且当前也是最大值
if(!len)return 1;
if(!ok&&dp[len][cnt]!=-1)return dp[len][cnt];
int i,ans=0,maxx=ok?digit[len]:9;
for(i=0;i<=maxx;i++) {
if(i==4||cnt&&i==2)//是否是4,上一个是6当前是2要continue;
continue;
ans+=dfs(len-1,i==6,ok&&i==maxx);
}
if(!ok)
dp[len][cnt]=ans;
return ans;
}
int f(int n) {
int len=0;
while(n) {
digit[++len]=n%10;
n/=10;
}
return dfs(len,0,1);
}
int main() {
int n,m;
memset(dp,-1,sizeof(dp));
while(scanf("%d%d",&n,&m),n||m) {
printf("%d\n",f(m)-f(n-1));
}
return 0;}

最新文章

  1. 【CentOS】LAMP相关2
  2. Java继承中的转型及其内存分配
  3. NDK学习一: 环境搭建Eclipse篇
  4. WS-Security
  5. ASP.NET MVC 使用 IOC框架 AutoFac 自动释放数据库资源
  6. 自定义一个可以使用foreach语句进行迭代的类(IEnumerable)
  7. (DT系列一)DTS结构及其编译方法
  8. linux设置LD_LIBRARY_PATH变量
  9. hdu 4740 The Donkey of Gui Zhou(dfs模拟好题)
  10. unable to create …
  11. linux使用yum的方式安装mysql实践
  12. C# Excel数据导入到数据库
  13. NLP︱句子级、词语级以及句子-词语之间相似性(相关名称:文档特征、词特征、词权重)
  14. HRBUST1522【单调队列+DP】
  15. Bootstrap-datepicker3官方文档中文翻译---I18N/国际化(原文链接 http://bootstrap-datepicker.readthedocs.io/en/latest/index.html)
  16. oracle针对某列让特定信息排序[decode]
  17. go struct{}的几种特殊用法
  18. 如何突破Ue4材质编辑器没有Pass的概念
  19. BZOJ2670 : Almost
  20. Excel函数之sumifs应用

热门文章

  1. poj Find a multiple【鸽巢原理】
  2. vue用户登录状态判断
  3. centos 扩展lrzsz通过xshell 下载安装文件
  4. random模块思维导图
  5. List 的属性与方法整理
  6. C# 文件操作(摘抄)
  7. 全面学习ORACLE Scheduler特性(3)使用Programs
  8. ch1 About thinking skills
  9. linux创建ftp用户以及指定目录问题
  10. Hive扩展功能(二)--HWI接口