티스토리 뷰

문제 설명

정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.

제한 사항

  • n은 0 이상 3000이하인 정수입니다.

 

💡 나의 풀이 

def solution(n):
    answer = 0
    sum = 0
    
    for i in range(1, n+1):
        if n % i == 0:
            sum += i
            answer = sum
    
    return answer

 

💡 더 간단하게 

def solution(n):    
    return sum([i for i in range(1, n+1) if n % i == 0])

 

** for문 한줄로 쓰기 

[i for i in range(1,n+1)]

 

**n % i == 0인 값들을 더하기 --> sum() 함수 이용 

sum([i for i in range(1, n+1) if n % i == 0])

 

 

**파이썬 내장함수 - max(), min(), sum()

  • max - 반복가능한 객체의 가장 큰 요소 값을 리턴
  • min - 반복가능한 객체의 가장 작은 요소 값을 리턴
  • sum - 반복가능한 객체의 요소 값의 합. (Default값 : 0)

💡 Example

a = [1,2,3,4,5]
b = [3,12,8,89]
print(max(a))
print(min(b))

>>5
>>3
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31