トピック
回文数はどちらの方法でも同じです。2つの2桁の数値の積から作成される最大の回文は、9009 = 91×99です。
2つの3桁の数値の積から作られた最大の回文を見つけます。
回文番号は両方向で同じです。2つの2桁の数値を掛けて得られる最大の回文は、9009 = 91×99です。
2つの3桁の数値を掛けた最大の回文を見つけます。
アイデア
最初に、2つの数値の積の結果をすべて100〜999の範囲でリストに入れ、次にそれらを最大から最小に並べ替え、ループして各数値が回文かどうかを判断します。
コードの実装(Python)
from past.builtins import xrange
def ispalindromic(num):
num = str(num)
strlist = list(num)
strlist.reverse()
numreverse = ''.join(strlist)
if num == numreverse:
return True
else:
return False
if __name__ == '__main__':
l = [x * y for x in xrange(999, 99, -1) for y in xrange(999, 99, -1)]
l.sort(reverse=True)
for i in range(len(l)):
if ispalindromic(l[i]) is True:
print(l[i])
break