#P166. 子数整除
子数整除
对于一个五位数 ,可将其拆分为三个子数:
例如,五位数 可以拆分成
现在给定一个正整数 ,要求你编程求出 到 之间所有满足下述条件的五位数,条件是这些五位数的三个子数 都可被 整除。
下面是初始化代码,其中需要添加代码的地方已经使用注释标出。
#include <iostream>
using namespace std;
int main() {
freopen("divide.in", "r", stdin);
freopen("divide.out", "w", stdout);
int k;
cin >> k;
bool ok = false;
for (int i = 10000; i <= 30000; i++) {
int a = /*这里需要添加合适的代码*/;
int b = /*这里需要添加合适的代码*/;
int c = /*这里需要添加合适的代码*/;
if (a % k == 0 && b % k == 0 && c % k == 0) {
ok = true;
cout << i << endl;
}
}
if (/*这里需要添加合适的代码*/) {
puts("No");
}
return 0;
}
输入格式
一个整数 。
输出格式
每一行为一个满足条件的五位数,要求从小到大输出。不得重复输出或遗漏。如果无解,则输出"No"
。
输出时每行末尾的多余空格,不影响答案正确性
要求使用「文件输入输出」的方式解题,输入文件为 divide.in
,输出文件为 divide.out
样例输入1
21
样例输出1
25252
27357
样例输入2
22
样例输出2
No