gesp(C++一级)(7)洛谷:B3863:[GESP202309 一级] 小明的幸运数
gesp(C++一级)(7)洛谷:B3863:[GESP202309 一级] 小明的幸运数
题目描述
所有个位数为 k k k 的正整数,以及所有 k k k 的倍数,都被小明称为“ k k k 幸运数”。小明想知道正整数 L L L 和 R R R 之间(包括 L L L 和 R R R)所有 k k k 幸运数的和,你能帮帮他吗?
输入格式
输入 3 3 3 行。第一行包含一个正整数 k k k,第二行包含一个正整数 L L L,第三行包含一个正整数 R R R。约定 2 ≤ k ≤ 9 2 \le k \le 9 2≤k≤9, 1 ≤ L ≤ R ≤ 1000 1 \le L \le R \le 1000 1≤L≤R≤1000。
输出格式
输出 1 1 1 行,符合题意的幸运数之和。
样例 #1
样例输入 #1
7
1
10
样例输出 #1
7
样例 #2
样例输入 #2
7
10
20
样例输出 #2
31
提示
样例解释 1
1 1 1 和 10 10 10 之间共有 1 1 1 个 7 7 7 幸运数: 7 7 7。因为 7 7 7 既是 7 7 7 的倍数,个位数又为 7 7 7。因此,结果为 7 7 7。
样例解释 2
10 10 10 和 20 20 20 之间共有 2 2 2 个 7 7 7 幸运数: 14 14 14 和 17 17 17。 14 14 14 是 7 7 7 的倍数, 17 17 17 的个位数为 7 7 7。因此,结果为 31 31 31。
AC代码(100分)
#include<bits/stdc++.h>
using namespace std;
//按题意先计算再判断
int x,y,z,q,sum;
int main(){
cin>>x>>y>>z>>q;
sum=x*2+y*5+z*3;//计算需要付的钱
if(q>sum){//钱够
cout<<"Yes"<<endl<<q-sum;
}else{//钱不够
cout<<"No"<<endl<<sum-q;
}
return 0;
}
文末彩蛋:
点击王老师青少年编程主页有更多精彩内容