728x90
문제 링크 -> https://programmers.co.kr/learn/courses/30/lessons/12928
코딩테스트 연습 - 약수의 합
정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요. 제한 사항 n은 0 이상 3000이하인 정수입니다. 입출력 예 n return 12 28 5 6 입출력 예 설명 입출력 예 #1 12의 약수
programmers.co.kr
정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수, solution을 완성해주세요.
제한 사항
- n은 0 이상 3000이하인 정수입니다.
------------------------------------------------------------풀이------------------------------------------------------------------
* 약수는 n/2부터는 없으므로 실행시간을 최소로 하기위해서 n/2까지만 했습니다.
class Solution {
fun solution(n: Int): Int = if (n<2) n else (1..n/2).filter{ n%it == 0 }.sum()+n
}
------------------------------------------------------------결과------------------------------------------------------------------
- 문제에 대한 질문 댓글 환영!
- 문제에 풀이에대한 비방 댓글도 언제나 환영! 다만 비속어나 화내지는 말아주세요
- 중간에 잘못된 부분이 있다면 댓글로 남겨주세요. 수정하겠습니다.
728x90
'Kotlin(프로그래머스) > Level 1' 카테고리의 다른 글
[프로그래머스/Kotlin] 이상한 문자 만들기 (0) | 2022.03.20 |
---|---|
[프로그래머스/Kotlin] 약수의 합 (0) | 2022.03.20 |
[프로그래머스/Kotlin] 시저 암호 (0) | 2022.03.20 |
[프로그래머스/Kotlin] 문자열 정수로 바꾸기 (0) | 2022.03.20 |
[프로그래머스/Kotlin] 수박수박수박수박수박수? (0) | 2022.03.20 |
댓글