题目大意:见刘汝佳《算法竞赛入门经典——训练指南》P173

解题思路:

  求出 0 到 m-1 这些数字中 0 出现的次数(此处要特判 m = 0 的情况),再求出 0 到 n 这些数字中 0 出现的次数,后者减去前者即是答案。

  求 0 到某一个数字这些数字中 0 出现的次数:

  从第二高位枚举每一位上 0 出现的次数:1、这一位上的数字是 0,我们以 10030 的百位为例,这一位上的 0 出现的次数为:(10 - 1)*100 + 30 + 1;2、这一位上的数字不是0,我们以 10330 的百位为例,这一位上的 0 出现的次数为:10*100。别忘记考虑 0 哦,所以得出的答案再加上 1 才是正解。

AC代码:

 #include <iostream>
#include <cstdio> using namespace std;
typedef long long ll; int main(){
ll m,n;
while(scanf("%lld%lld",&m,&n)==&&m>=&&n>=){
m--;
ll ans1=;
if(m>=){
ll t1=;
while(m/t1>=)
t1*=;
while(t1){ //判断条件
if(m/t1%!=)
ans1+=m/(t1*)*t1;
else
ans1+=((m/(t1*)-)*t1+m%t1+);
t1/=;
}
ans1++;
}
else
ans1=; ll ans2=, t2=;
while(n/t2>=)
t2*=;
while(t2){
if(n/t2%!=)
ans2+=n/(t2*)*t2;
else
ans2+=((n/(t2*)-)*t2+n%t2+);
t2/=;
}
ans2++;
printf("%lld\n",ans2-ans1);
}
return ;
}

UVA11038的更多相关文章

  1. UVA 1103 How Many O's?

    题目链接:UVA-11038 题意为给定n和m,求n和m之间(包含)的所有数包含的0的个数. 思路是,用cal(x)表示小于等于x的数包含的0的个数.则答案为cal(n)-cal(m-1). 再把求c ...

  2. UVa 11038 有多少个0

    https://vjudge.net/problem/UVA-11038 题意: 输入两个非负整数m和n,求将m~n的所有整数写出来,一共要写多少个数字0? 思路: 举个例子来说: 12345 从右到 ...

随机推荐

  1. mysql 之 函数

    聚合函数 avg()函数 - 计算一组值或表达式的平均值. count()函数 - 计算表中的行数. instr()函数 - 返回子字符串在字符串中第一次出现的位置. sum()函数 - 计算一组值或 ...

  2. java在指定区间内生成随机数

    Random对象生成随机数 首先需要导入包含Random的包 import java.util.Random; nextInt(int)方法将生成0~参数之间的随机整数但不包括参数. 例如生成0~99 ...

  3. 【Linux题目】第四关

    1. 如何过滤出已知当前目录下oldboy中的所有一级目录? 提示:不包含oldboy目录下面目录的子目录和隐藏目录,只要一级目录即可. 解答: ls -F|grep /   通过ls -F给目录后面 ...

  4. 【DNS域名解析命令】host

    host - DNS lookup utility host命令是常用的分析域名查询工具,可以用来测试域名系统工作是否正常. 语法: host [-aCdlnrsTwv] [-c class] [-N ...

  5. 【Linux常见命令】touch命令

    touch - change file timestamps touch [文件名] 就是“摸”一下文件,如果文件不存在,就建立新文件:如果文件存在,就改变文件的访问时间atime等时间戳信息. 语法 ...

  6. 《Cisco防火墙》一2.4 总结

    本节书摘来自异步社区<Cisco防火墙>一书中的第2章,第2.4节,作者 [巴西]Alexandre M.S.P. Moraes,更多章节内容可以访问云栖社区"异步社区" ...

  7. bind()函数的深入理解及两种兼容方法分析

    在JavaScript中,bind()函数仅在IE9+.Firefox4+.Chrome.Safari5.1+可得到原生支持.本文将深入探讨bind()函数并对两种兼容方法进行分析比较.由于本文将反复 ...

  8. Jmeter 后置处理器

    1.JSON Extractor Json extractor 后置处理器用在返回格式为 Json 的 HTTP 请求中,用来获取返回的 Json 中的某个值.并保存成变量供后面的请求进行调用或断言等 ...

  9. 集训模拟赛-1-T2

    好了不要在铺垫了直接整吧就 题目拿来!!!!!!! 倒水 (water) (256MB,1s) [问题描述] 你有一个水桶(记为 0),两个杯子(记为 1,2).水桶中的水量无限,容量也无限.1 号杯 ...

  10. [Abp vNext 入坑分享] - 5.全局异常替换

    一.简要说明 [项目源码] [章节目录]   前面我们已经初步完成了框架的功能了,jwt的也已经接入完成了.   现在需要进行全局异常的接入了,abpvnext官方本来就有了全局异常的模块了,介绍链接 ...