본문 바로가기

개발 노트/알고리즘[Kotlin]

프로그래머스 알고리즘 문제[짝수의합]

정수 n이 주어질 때, n이하의 짝수를 모두 더한 값을 return 하도록 solution 함수를 작성해주세요.

 

제한사항

0 < n ≤ 1000

 

 

0 부터 1000 이하의 숫자 중 1부터 n까지의 범위에 속하는 모든 짝수들을 더해서 리턴하면 된다.

 

ex) n =10 , 2+4+6+8+10 = 30 리턴 

 

class Solution {
    fun solution(n: Int): Int {
        var a : Int = 0
        
        // 반복문 돌기 (1부터 n까지)
        for(i : Int in 1..n){
            // 만약 i가 짝수면, a에 i를 더해라
            if(i % 2 == 0){
                a += i
            }
        }
        return a
    }
}

 

 

# 다른 사람의 풀이

class Solution {
    fun solution(n: Int) = (0..n).filter { it % 2 == 0 }.sum()
}