https://school.programmers.co.kr/learn/courses/30/lessons/12928
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(n):
NL = []
for i in range(1, int(n**(1/2)+1)):
a, b = divmod(n, i)
if b == 0:
NL.append(a)
NL.append(i)
NL = set(NL)
return sum(NL)
제곱근까지만 for문 돌려도 전체약수를 찾을 수 있고
16 25같은 경우 같은숫자가 두번들어가는것을 set으로 중복값제거했음