题目描述
输出区间[l, r]‘2’出现了多少次
样例输入
2 22
样例输出
6
算法
(暴力枚举) $O(nlogn)$
循环区间每个数,转换为字符串,遍历,如果某位等于2,c++。
时间复杂度
从1到n有n个数,每个数有logn位,所以是$O(nlogn)$
C++ 代码
#include <bits/stdc++.h>
using namespace std;
int l, r, n, c;
int main(){
cin >> l >> r;
for(int i = l;i <= r;i++){
string a = to_string(i);
for(int j = 1;j <= a.size();j++){
if(a[j-1] == '2')
c++;
}
}
cout << c;
}