题目:(来自:http://www.rqnoj.cn)
请统计某个给定范围[L, R]的所有整数中,数字2 出现的次数。
比如给定范围[2, 22],数字2 在数2 中出现了1 次,在数12 中出现1 次,在数20 中出现1 次,在数21 中出现1 次,在数22 中出现2 次,所以数字2 在该范围内一共出现了6次。
【数据范围】
1 ≤ L ≤ R≤ 10000。
输入共1 行,为两个正整数L 和R,之间用一个空格隔开。
输出共1 行,表示数字2 出现的次数。
题目很水,直接上代码:
#include <iostream>
#include <cmath>
#include <cstring>
#include <algorithm>
using namespace std;
//ifstream cin(".in");
//ofstream cout(".out");
int main()
{
int i,j,n,j1,j2,j3,j4,m,jishu=0;
cin>>n>>m;
for(i=n;i<=m;i++)
{
j1=i%10;
j2=i%100/10;
j3=i%1000/100;
j4=i%10000/1000;
if(j1==2)
jishu++;
if(j2==2)
jishu++;
if(j3==2)
jishu++;
if(j4==2)
jishu++;
}
cout<<jishu<<endl;
//system ("pause");
return 0;
}
- 测试点1 Accepted / 0ms / 12252kB
- 测试点2 Accepted / 6ms / 12252kB
- 测试点3 Accepted / 1ms / 12252kB
- 测试点4 Accepted / 5ms / 12252kB
- 测试点5 Accepted / 0ms / 12252kB
- 测试点6 Accepted / 0ms / 12252kB
- 测试点7 Accepted / 0ms / 12252kB
- 测试点8 Accepted / 1ms / 12252kB
- 测试点9 Accepted / 1ms / 12252kB
- 测试点10 Accepted / 6ms / 12252kB
AC so easy
!