内存限制:128 MiB时间限制:2000 ms标准输入输出
题目类型:传统评测方式:文本比较
题目描述
在数字王国中,存在许多汉字王国派来的间谍,每个间谍都由一个整数表示,并且具有如下特征:
● 间谍的编号用十进制表示,其各位数字之和在[ A, B] 范围之内。
现在数字国王命令你找出数字1~N之间(包括1和N)的所有间谍,并求出它们之和。
输入格式
一行,3个整数,分别为N, A, B(1<=N<=10000, 1<=A<=B<=36)
输出格式
所有“间谍”之和
样例
样例输入
10 2 5
样例输出
14
数据范围与提示
请使用自定义函数求某个间谍各位数字之和。
#include <bits/stdc++.h>
using namespace std;
#define SF scanf
#define PF printf
int n, a, b;
bool check(int n) {
int sum = 0;
while (n != 0) {
sum += n % 10;
n /= 10;
}
if (sum < a || sum > b)
return false;
return true;
}
int main() {
int ans = 0;
SF("%d%d%d", &n, &a, &b);
for (int i = 1; i <= n; i++) {
if (check(i)) {
ans += i;
}
}
PF("%d", ans);
return 0;
}