时间复杂度 o(NlogB(N^2)
Python 代码
B = int(input())
int_to_c = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J']
# B进制转换
def convert(a, b):
C = []
while a:
C.append(int_to_c[a % b])
a //= b
return C
# 判断是否回文
def is_huiwen(C):
n = len(C)
for i in range(n//2):
if C[i] != C[n-i-1]: return False
return True
for x in range(1, 301):
sq = x ** 2
C = convert(sq, B)
A = convert(x, B)
A.reverse()
if is_huiwen(C):
print("".join(A), "".join(C))