时间限制: 1000 ms 内存限制: 65536 KB
提交数: 34232 通过数: 24017
【题目描述】
请统计某个给定范围[L, R]的所有整数中,数字2出现的次数。
比如给定范围[2, 22],数字2在数2中出现了1次,在数12中出现1次,在数20中出现1次,在数21中出现1次,在数22中出现2次,所以数字2在该范围内一共出现了6次。
【输入】
输入共 1 行,为两个正整数 L 和 R,之间用一个空格隔开。
【输出】
输出共 1 行,表示数字 2 出现的次数。
【输入样例】
2 22
【输出样例】
6
【提示】
样例 #2:
2 100
样例 #2:
20
c++递归算法:
#include <bits/stdc++.h>
using namespace std;
int d=0,n=0;
int qiu2(int i) {
if(i%10==2) {
n++;
}
if(i>0) {
return qiu2(i/10);
} else return n;
}
int main() {
int a,b;
cin>>a>>b;
for(int i=a; i<=b; i++) {
d+=qiu2(i);
n=0;
}
cout<<d;
return 0;
}
各位大佬不喜勿喷,谢谢