Programming/Coding Problem
BOJ 9506번: 약수들의 합
핵심 포인트 기초 구현력 약수의 정의 제출코드 while True: N = int(input()) if N == -1: break div = [n for n in range(1, N//2+1) if N % n == 0] if sum(div) == N: print("{} = {}".format(N, ' + '.join(map(str, div)))) else: print("{} is NOT perfect.".format(N)) 해설 언제 입력이 끝날 지 모르기 때문에 while 문을 이용해서 -1이 입력되면 반복문을 탈출할 수 있도록 만들어놓습니다. 다음으로 지난 포스팅에서 본 것과 동일한 방법으로 약수를 찾는 데 다른 점은 가장 큰 약수는 주어진 수의 절반이므로 N // 2만큼 순회합니다. 만약 div의 ..