0
点赞
收藏
分享

微信扫一扫

里程表(春季每日一题 34)

小编 2022-06-27 阅读 45

约翰的奶牛正在公路上旅行。

他们汽车上的里程表显示的是整数里程值。

旅途开始时里程表显示的里程值为 里程表(春季每日一题 34)_i++,旅途结束时里程表显示的里程值为 里程表(春季每日一题 34)_#include_02

每当里程表显示“有趣的”数字(包括开始和结束时显示的数字)时,奶牛们就会发出愉快的叫声。

如果一个数除去前导零以外的所有数字中,除了一个数字不同以外,其他所有数字都是相同的,那么这个数就是“有趣的”。

例如,里程表(春季每日一题 34)_枚举_03里程表(春季每日一题 34)_ios_04 是有趣的,而 里程表(春季每日一题 34)_枚举_05里程表(春季每日一题 34)_枚举_06 不是有趣的。

请帮助约翰计算奶牛们在旅途中发出叫声的次数。

输入格式
共一行,包含两个整数 里程表(春季每日一题 34)_i++里程表(春季每日一题 34)_#include_02

输出格式
输出奶牛们在旅途中发出叫声的次数。

数据范围
里程表(春季每日一题 34)_#include_09

输入样例:

110 133

输出样例:

13

样例解释
里程表(春季每日一题 34)_#include_10 之间的所有数字中,有趣数字为:里程表(春季每日一题 34)_i++_11

#include<iostream>
#include<string>

using namespace std;

typedef long long LL;

LL a, b;

int main(){

cin >> a >> b;

int res = 0;
for(int i = 3; i <= 17; i++)
for(int j = '0'; j <= '9'; j++){
string s(i, j);

for(int l = '0'; l <= '9'; l++){
if(l == j) continue;
for(int k = 0; k < i; k++){
s[k] = l;
LL p = 0;
for (int q = 0; q < i; q++) p = p * 10 + (s[q] - '0');
if(s[0] != '0' && a <= p && p <= b) res++;
s[k] = j;
}
}
}

cout << res << endl;

return 0;
}


举报

相关推荐

0 条评论