설명
http://euler.synap.co.kr/ 4번 문제입니다.문제
앞에서부터 읽을 때나 뒤에서부터 읽을 때나 모양이 같은 수를 대칭수(palindrome)라고 부릅니다.두 자리 수를 곱해 만들 수 있는 대칭수 중 가장 큰 수는 9009 (= 91 × 99) 입니다.
세 자리 수를 곱해 만들 수 있는 가장 큰 대칭수는 얼마입니까?
코드
파이썬 2.7
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | def is_palin(n): length = len(str(n))/2 for i in range(0,length): if str(n)[i] != str(n)[-i-1]: return 0 return 1 result = 0 for a in range(100,1000): for b in range(100,1000): if is_palin(a*b): result = max(result, a*b) print result | cs |