코딩 테스트 연습 - 두 정수 사이의 합(프로그래머스 레벨1)

다용도리모콘·2020년 3월 16일
0

CodingTest

목록 보기
4/34

01. 이해

두 정수를 받아서 두 정수 사이에 속한 모든 정수의 합을 리턴한다
   

02. 계획

두 정수를 a와 b라고 했을 때 a가 b보다 작거나 같은 경우 a부터 b까지 차례대로 더하고 리턴
a가 b보다 클 경우 b부터 a까지 차례대로 더하고 리턴

03. 실행

fun solution(a: Int, b: Int): Long {

    return when (a <= b) {
        true -> (a..b).fold(0L, {total, next -> total + next})
        else -> (b..a).fold(0L, {total, next -> total + next})
    }
}

04. 회고

문제 자체는 쉬운데 어떻게 하면 좀 더 간결하게 풀 수 있을까 고민을 좀 했다.
변수 할당을 하지 않고 최대한 코틀린 문법을 활용해서 풀어보았다.
fold는 처음 써봤는데 여러모로 유용한 듯

0개의 댓글