题目描述
对于一个五位数,可将其拆分为三个子数:
例如,五位数20207可以拆分成
现在给定一个正整数K,要求你编程求出10000到30000之间所有满足下述条件的五位数,条件是这些五位数的三个子数都可被K整除。
输入输出格式
输入格式:
一个正整数K
输出格式:
每一行为一个满足条件的五位数,要求从小到大输出。不得重复输出或遗漏。如果无解,则输出“No”。
输入输出样例
输入样例#1: 15
输出样例#1:
22555
25555
28555
30000
没想好字符串怎么做,还是用数学方法吧
# -*- coding: utf-8 -*-
def mid(n):
m = int(n/10000)
tmp = n - m*10000
res = int(tmp/10)
return res
def las(n):
m = int(n/1000)
tmo = n - m*1000
return tmo
k = input()
k = int(k)
cnt = 0
for i in range(10000, 30001):
i1 = int(i/100)
i2 = mid(i)
i3 = las(i)
if i1%k==0 and i2%k==0 and i3%k==0:
print(i)
cnt += 1
if cnt==0:
print('No')