NOIP 2013 计数问题
题目描述
试计算在区间1到n的所有整数中,数字x(0≤x≤9)共出现了多少次?例如,在1到11中,即在1、2、3、4、5、6、7、8、9、10、11中,数字1出现了4次。
输入
每组输入数据共1行,包含2个整数n、x,之间用一个空格隔开。
数据规模:
对于100%的数据,1≤n≤1,000,000,0≤x≤9。
输出
每组输出共1行,包含一个整数,表示x出现的次数。
分析:因为输入只有一组,所以可以直接for一遍从1到n,然后将每个数字的每一位取出来,遇到一个x,就让计数器+1,最后输出即可。
虽然这题的读入数据只有一组,但平时一般都是多组,所以为了每次能做到O(1)的查询,还是习惯性的打了表,用一个二维数组维护到第几个数字的时候0-9这10个数字每个数字出现的次数,然后直接输出即可。
#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<stack>
#include<cstdio>
#include<vector>
#include<cctype>
#include<cstring>
#include<utility>
#include<cstdlib>
#include<iomanip>
#include<iostream>
#include<algorithm>
#define Clear(x) memset(x,0,sizeof(x))
#define fup(i,a,b) for(int i=a;i<b;i++)
#define rfup(i,a,b) for(int i=a;i<=b;i++)
#define fdn(i,a,b) for(int i=a;i>b;i--)
#define rfdn(i,a,b) for(int i=a;i>=b;i--)
typedef long long ll;
typedef unsigned long long ull;
using namespace std;
const int maxn =1e6+7;
int a[maxn][10];int read()
{char ch=getchar();int ret=0,f=1;while(ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}while(ch>='0'&&ch<='9'){ret=ret*10+ch-'0';ch=getchar();}return f*ret;
}void slove()
{rfup(i,1,1000000){fup(j,0,10){a[i][j]=a[i-1][j];}for(int k=i;k;k/=10)a[i][k%10]++;}
}int main()
{slove();int n=read(),x=read();printf("%d\n",a[n][x]);return 0;
}
NOIP 2013 计数问题相关推荐
- [NOIP 2013提高组]转圈游戏 题解
这题在洛谷上是道黄题,即[普及/提高-] 所以虽然是提高组的,但是其实挺简单的. 我们来看下题面: [NOIP 2013]转圈游戏 刚看到题面作为一个蒟蒻感觉它都不配做黄题,但是直到我看清楚了后发现它 ...
- NOIP 2013 提高组 货车运输
描述 A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物,司机们想知道每辆车在不超过车辆限重的情况下,最多能运多 ...
- NOIP 2013 普及组初赛试题
第 1 题 一个 32 位整型变量占用(A)个字节. A. 4 B. 8 C. 32 D. 128 常识题,每个32 位整型变量占4个字节 第 2 题 二进制数 11.01 在十进制下是(A). A. ...
- [NOIp 2013]货车运输
Description A 国有 n 座城市,编号从 1 到 n,城市之间有 m 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 q 辆货车在运输货物, 司机们想知道每辆车在不超过车辆限重 ...
- Noip 2013 练习
转圈游戏 传送门 Solution 快速幂 Code //By Menteur_Hxy #include <cstdio> #include <cstdlib> #includ ...
- NOIP 2013 day1
tags: 模拟 快速幂 逆序对 树状数组 归并排序 最小生成树 lca 倍增 categories: 信息学竞赛 总结 tex live 2017.iso 转圈游戏 火柴排队 货车运输 转圈游戏 s ...
- 水题 逆序对 NOIP 2013 火柴排队
题目如下 题目描述 Description 涵涵有两盒火柴,每盒装有 n 根火柴,每根火柴都有一个高度.现在将每盒中的火柴各自排成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为: ,其中 a ...
- 「NOIP 2013」 货车运输
题目链接 戳我 \(Solution\) 这一道题直接用\(kruskal\)重构树就好了,这里就不详细解释\(kruskal\)重构树了,如果不会直接去网上搜就好了.接下来讲讲详细过程. 首先构建\ ...
- NOIP 2013 day2
tags: 模拟 贪心 搜索 动态规划 categories: 信息学竞赛 总结 积木大赛 花匠 华容道 积木大赛 Solution 发现如果一段先单调上升然后在单调下降, 那么这一块的代价是最高的减 ...
最新文章
- 2013年1月第4个周末
- Tomcat集群快速入门:Nginx负载均衡配置,常用策略,场景及特点
- android jni release,Android NDK 设置编译模式debug和release
- UnaryOperator函数式接口
- 强制消除Xcode警告的方法
- 10099 The Tourist Guide
- 2019年web前端全集_2019年最佳30+ Web工具
- XStream使用总结
- 二叉树:以为使用了递归,其实还隐藏着回溯
- ROS教程(四):RVIZ使用教程(详细图文)
- 计算机上fn按键,笔记本上fn是哪个键fn键功能详解【方法详解】
- Window系列 (一) — WindowManager 详解
- ZZULIOJ 1035: 分段函数求值 (Java)
- ednote服务器运行失败,Endnote安装出现错误的解决办法
- 使用conda从requirements.txt中安装依赖包
- 使用Trove的integration定制化trove镜像
- 广州王师傅揭秘未来20年最有前途的行业!——不要再错过下一个风口
- 详细的网络安全基础,一篇文章统统告诉你
- java公路车等级_CANNONATA康纳塔 JAVA发布2016款终极赛车
- jsp计算机网络学习网站