문제:
Armstrong Number는 임의의 숫자가 있는데, 그 숫자와 각 자리수의 세제곱이 같은 수를 뜻한다.
예를 들어 370의 경우 3^3 + 7^3 + 0^3 = 370 이니 Armstrong Number이다.
풀이 1:
for inx in range(100, 1000, 1): # 100부터 999까지 반복
num1 = inx // 100 # 백의 자리 숫자 분리
num2 = (inx%100) // 10 # 십의 자리 숫자 분리
num3 = ((inx%100) % 10) # 일의 자리 숫자 분리
# 각 자리수 별로 분리한 숫자들의 세제곱의 합을 구한다.
result = (num1**3) + (num2**3) + (num3**3)
if(inx == result ):
print( inx )
풀이 2:
for i in range(100,1000,1):
a1 = int(str(i)[0])
a2 = int(str(i)[1])
a3 = int(str(i)[2])
if i == (a1**3 + a2**3 + a3**3 ):
print(i)