不要62

题目

试题描述
杭州人称那些傻乎乎粘嗒嗒的人为 62(音:laoer)。

杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。

不吉利的数字为所有含有4或62的号码。例如:62315,73418,88914都属于不吉利号码。但是,61152虽然含有6和2,但不是62连号,所以不属于不吉利数字之列。

你的任务是,对于每次给出的一个牌照区间号,推断出交管局今后又要实际上给多少辆新的士车上牌照了。
输入
输入的都是整数对n,m,如果遇到都是0的整数对,则输入结束。
输出
对于每个整数对,输出一个不含有不吉利数字的统计个数,该数值占一行位置。
输入样例 
1 100
0 0
输出样例
80
其他说明
对于全部数据,0<n<=m<1e7。

分析

dp方程如下。

 记搜函数

int dfs(int pos,int l,bool flag) //记搜 
/*
pos:搜到了第几位,从高到低 
l(last):上一位是啥 
flag:上一位有没有到上限,具有传递性 
*/
{if(pos==0) return 1; //搜到头了 if(!flag && dp[pos][l]!=-1) return dp[pos][l]; //若上一位没到上限且dp[pos][l]以求过,则直接调用。 int ans=0,t=9;//t表示这一位能填的上限 if(flag) t=a[pos];for(int i=0;i<=t;i++){if(i==4||(l==6 && i==2)) continue;ans+=dfs(pos-1,i,flag && i==t); //搜索下一位。}if(!flag) dp[pos][l]=ans;return ans;
}

完整代码

#include <bits/stdc++.h>
using namespace std;
int n,m,a[105],dp[105][15];
int dfs(int pos,int l,bool flag) //记搜 
/*
pos:搜到了第几位,从高到低 
l(last):上一位是啥 
flag:上一位有没有到上限,具有传递性 
*/
{if(pos==0) return 1; //搜到头了 if(!flag && dp[pos][l]!=-1) return dp[pos][l]; //若上一位没到上限且dp[pos][l]以求过,则直接调用。 int ans=0,t=9;//t表示这一位能填的上限 if(flag) t=a[pos];for(int i=0;i<=t;i++){if(i==4||(l==6 && i==2)) continue;ans+=dfs(pos-1,i,flag && i==t); //搜索下一位。}if(!flag) dp[pos][l]=ans;return ans;
}
int solve(int x)
{int num=0;while(x>0){num++;a[num]=x%10; //a数组记录这个数的每一位是多少。 x/=10;}return dfs(num,0,true);
}
int main()
{memset(dp,-1,sizeof(dp));while(1){cin>>n>>m;if(!n && !m) break;cout<<solve(m)-solve(n-1)<<endl;}return 0;
}

  

 

 

转载于:https://www.cnblogs.com/zxjhaha/p/11357394.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262879.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

myssh

http://blog.csdn.net/infon/archive/2007/04/17/1568309.aspx http://blog.csdn.net/infon 转载于:https://www.cnblogs.com/tries/archive/2008/04/11/1148121.html

队列,排队买饭

1 /*这题的错误是和同学熬夜找出来的呃 。。。*/ 2 3 #include<stdio.h> 4 #include<string.h> 5 int main() 6 { 7 int front,rear,i,f,j,n,t,q[10000]; 8 char s[20]; 9 scanf("%d",&n); 10 rear 0,front0; 1…

CentOS 7 下的 Firewall

CentOS 7 默认实用的用Firewalld作为防火墙&#xff0c;摒弃了原先的iptables。但是内核还是使用iptable作为管理参考文档https://access.redhat.com/documentation/zh-CN/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.htmlhttp://www.myhome.net.tw/2…

POJ 1091(数论)

题目大意是给定两个整数n和m&#xff0c;求出长度为n1满足条件的数列data的个数&#xff0c;数列的要求下&#xff1a;1&#xff09;1<data[i]<m,for1<i<n2)data[n1]m;3&#xff09;这个n1个数满足&#xff1a;存在x1,x2,...,xn,xn1,满足x1*data[1]x2*data[2]...x(…

你真的了解.NET中的String吗?

你真的了解.NET中的String吗? Terrylee&#xff0c;2005年12月25日 概述 String在任何语言中&#xff0c;都有它的特殊性&#xff0c;在.NET中也是如此。它属于基本数据类型&#xff0c;也是基本数据类型中唯一的引用类型。字符串可以声明为常量&#xff0c;但是它却放在了堆中…

没有动任何配置文件,今天就出现了修改的JSP内容在页面不体现。依然是老的页面内容...

2019独角兽企业重金招聘Python工程师标准>>> 现象&#xff1a; 没有动任何配置文件&#xff0c;今天就出现了修改的JSP内容在页面不体现。依然是老的页面内容 问题分析: 既然可以用过&#xff0c;所以系统应该是检测文件更新的&#xff0c;之所以不重新编译JSP&…

DIV中class和id的区别

1.class是设置标签的类&#xff0c;id是设置标签的标识;2. 使用方法不同&#xff1a; class属性用于指定元素属于何种样式的类,如样式表可以加入.content1 { color: red; background: #ff80c0 } 使用方法&#xff1a;class"content1" id属性用于定义一个元素的独…

新浪微博api(.net)时间格式问题

Tue May 03 09:30:23 0800 2011 以前研究sinaapi的时候被这个时间格式纠结了好久&#xff0c;还自己写了一个函数去处理这种格式。最近在网上看到一个代码&#xff0c;很方便就解决了这个问题&#xff08;我就说.net怎么会没有这方法呢&#xff09;。 System.Globalization.Cul…

php代码上线,实现版本切换

以下为现有php业务&#xff0c;代码上线方式。实现&#xff1a;4套环境版本切换。[roothz-web-01 htdocs]# cat release.sh #!/usr/bin/env bashwork_dir/mnt/var/www/htdocs release_dir/var/www/htdocs# app environment app_env$1 # build release file path build_file_pat…

PWA

转载于:https://www.cnblogs.com/QianDingwei/p/11359160.html

Windows XP SP3?转自作者: 孤单的鸽子,  出处:天极yesky, 责任编辑: 袁绍龙

经过测试和检查之后&#xff0c;我们认为&#xff0c;SP3并未为Windows XP系统引入任何新的功能&#xff0c;它仅仅是一款安全升级和BUG修正补丁程序集……原文&#xff1a;http://winsystem.ctocio.com.cn/windowsxp/321/7492821.shtml目前&#xff0c;互联网上围绕Windows XP…

asp.net与JAVASCRIPT函数的相互调用

1.如何在JavaScript访问C#函数? 方法一&#xff1a; &#xff08;1&#xff09;、首先建立一个按钮&#xff0c;在后台将调用或处理的内容写入button_click中; &#xff08;2&#xff09;、在前台写一个js函数&#xff0c;内容为document.getElementById("btn1").…

汇编推荐书籍

1.《深入理解计算机系统》&#xff0c;必看&#xff01; 2.《see mips run linux》 &#xff0c; 千万不要认真看&#xff0c;看这本书的目录和小标题&#xff0c;了解mips需要学习些什么&#xff0c;而不是通过这本书来学基础知识&#xff0c;不懂的概念上网查就可以了&#x…

创建表头固定,表体可滚动的GridView(转)

本方法只需要设置一个GridView的宽度&#xff0c;其它宽度不需要设置。测试环境&#xff1a;IE6&#xff0c;Firefox通过。 C# <% Page Language"C#" AutoEventWireup"true" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional/…

3G与4G到底有何区别?

对每一个手机用户来说&#xff0c;3G和4G都是手机术语词典中最神秘的词汇&#xff0c;然而在任何卖手机和平板电脑的地方你都能发现它们的身影。当你想买一部手机的时候&#xff0c;通常不清楚该选择哪一种&#xff0c;但有一点要明确——不要随便追求高的数字。这篇文章将帮助…

海尔5D净水洗热水器引领中国制造未来

在过去的一段时间里&#xff0c;智能家居与物联网相继成为热潮&#xff0c;云计算与大数据开始被应用于不同领域的情况下&#xff0c;越来越多的智能家居产品也开始走入普通消费者生活之中……在这些独特的产业创新风起云涌的情况下&#xff0c;越来越多的行业开始推动着中国制…

Lambda表达式——注重过程的编程思想

一、使用匿名内部类的匿名对象创建线程和Lambda表达式写法 Lambda表达式写法不用去定义一个Runable接口的实现类&#xff1b; 二、方法入参是一个接口或者接口的实现类 三、对某个类的一些对象实例进行排序 其中&#xff0c;数组创建时候使用的是静态初始化&#xff0c;里面存放…

[转] STL中map用法详解

一&#xff0e;Map概述 Map是STL的一个关联容器&#xff0c;它提供一对一&#xff08;其中第一个可以称为关键字&#xff0c;每个关键字只能在map中出现一次&#xff0c;第二个可能称为该关键字的值&#xff09;的数据处理能力&#xff0c;由于这个特性&#xff0c;它…

HDU 1874 畅通工程续

畅通工程续 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 9566 Accepted Submission(s): 3200 Problem Description某省自从实行了很多年的畅通工程计划后&#xff0c;终于修建了很多路。不过路多了也不好&am…

uboot中变量env(收集)

Env在u-boot中通常有两种存在方式&#xff0c;在永久性存储介质中&#xff08;flash、NVRAM等&#xff09;&#xff0c;在SDRAM中。可配置不适用env的永久存储方式&#xff0c;但不常用。U-boot在启动时会将存储在永久性存储介质中的env重新定位到RAM中&#xff0c;这样可以快速…