02911: 受限完全平方数
http://cs101.openjudge.cn/practice/02911/
A,B都是四位数,且是完全平方数。C是一个4位数,且每一位的数字都相同。 已知C=A-B,求所有满足条件,且小于限制的A。
输入
输入一个MAX,四位数。
输出
从小到大输出所有的满足条件的A,且A应该小于MAX。
注意,每输出一个数后换行。
样例输入
无样例输出
无python
# 生成所有四位数的完全平方数
perfect_squares = []
for i in range(32, 100): # 32^2 = 1024 是最小的四位数完全平方数,99^2 = 9801 是最大的四位数完全平方数
perfect_squares.append(i ** 2)
# 生成所有每一位数字都相同的四位数
same_digit_numbers = []
for digit in range(1, 10):
same_digit_numbers.append(int(str(digit) * 4))
# 读取输入的 MAX
MAX = int(input())
# 遍历所有可能的 A 和 B
for A in perfect_squares:
if A >= MAX:
continue
for B in perfect_squares:
if A > B:
C = A - B
if C in same_digit_numbers:
print(A)