3.2
编程题
2
试题编号
:
2023-09-23-01-C-02
试题名称
:小明的幸运数
时间限制
:
1.0 s
内存限制
:
128.0 MB
3.2.1
问题描述
所有个位数为k 的正整数,以及所有k 的倍数,都被小明称为
“ k
幸运数
”。小明想知道正整数L 和 R之间(包括L 和R )所有k幸运数的和,你能帮帮他吗?
3.2.2
输入描述
输入
3
行。第一行包含一个正整数 k,第二行包含一个正整数 L,第三行包含一个正整数 R。约定
2<=k<=9,1<=L<=R<=1000 。
3.2.3
输出描述
输出
1
行,符合题意的幸运数之和。
3.2.4
样例输入
1
7110
3.2.5
样例输出
1
7
3.2.6
样例解释
1
1
和
10
之间共有
1
个
7
幸运数:
7
。因为
7
既是
7
的倍数,个位数又为
7
。因此,结果为
7
。
3.2.7
样例输入
2
71020
3.2.8
样例输出
2
31
3.2.9
样例解释
2
10
和
20
之间共有
2
个
7
幸运数:
14
和
17
。
14
是
7
的倍数,
17
的个位数为
7
。因此,结果为
31
。
解析:先枚举L到R之间的所有整数i,判断i是否是k的倍数或者个位是k,对于符合条件的i,累加求和,详见代码:
#include <iostream>
using namespace std;
int main() {
int k, L, R, sum = 0;
cin >> k >> L >> R;
for (int n = L; n <= R; n++) { //枚举
if (n % 10 == k || n % k == 0) { //判断
sum += n;//求和
}
}
cout << sum << endl;
return 0;
}