博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
奥数 --- 找规律 + 总结
阅读量:5845 次
发布时间:2019-06-18

本文共 878 字,大约阅读时间需要 2 分钟。

问题 G: 数字的个数

时间限制: 1 Sec  
内存限制: 128 MB
提交: 78  
解决: 3
[ ][ ][ ]

题目描述

输入两个正整数a,b(1=<a<b<=1000000)及0~9的一个数字d
求在a与b之间的所有正整数(含a,b)中数字d出现的次数

输入

第一行一个数T(1 <= T <= 10000)
接下来 T 行每行由  
 a b d 三个数组成

输出

输出这组数据a与b之间所有正整数中数字d出现的个数,一
 行一个

样例输入

2 1 100 110000 20000 5

样例输出

214000

【题目来源】

湖南工业大学第四届程序设计大赛(2014年校赛)

 

【题目分析】

这题在编程之美上有,只不过是换了一下数字,还有这题当判断0的个数时要加一个特判,否则会错。

其实就是利用高位、当前位、低位之间的关系,具体推导过程详见编程之美。

 

我的代码:

#include
using namespace std;int fun(int a,int d){ int cnt=0,factor=1,CurrNum=0,LowerNum=0,HigherNum=0; while(a/factor) { HigherNum=a-(a/factor)*factor; CurrNum=(a/factor)%10; HigherNum=a/(factor*10); if(d==0) //特判,这题的重点 HigherNum-=1; if(CurrNum
>T; while(T--) { int a,b,d; cin>>a>>b>>d; cout<
<

 

转载于:https://www.cnblogs.com/crazyacking/p/3739142.html

你可能感兴趣的文章
Windows Server 2008 RemoteApp---发布应用程序
查看>>
白帽子技术分析会话劫持实战讲解
查看>>
我的友情链接
查看>>
yum的三种方式
查看>>
人生苦短我用python(02)动态加载模块
查看>>
常用宏定义
查看>>
Redis分布式缓存安装和使用
查看>>
PHP环境搭建:Windows 7下安装配置PHP+Apache+Mysql环境教程以及注意事项
查看>>
20天精通 Windows 8:系列课程资料集
查看>>
html5 <figure> 标签
查看>>
linux的I/O多路转接select的fd_set数据结构和相应FD_宏的实现分析
查看>>
Mysql数据库InnoDB存储引擎的隔离级别
查看>>
TextView 不用获取焦点也能实现跑马灯
查看>>
开源监控软件 Hyperic 的两种插件
查看>>
TOMCAT
查看>>
删除一个或数个文件
查看>>
无土栽培中的物联网技术应用
查看>>
html入门的一些东西
查看>>
spring异常:Could not resolve placeholder
查看>>
div contenteditable="true"各个浏览器上的解析
查看>>