본문 바로가기

Algorithm/level2

[ 프로그래머스 - Kotlin ] 최댓값과 최솟값 ( 코틀린 )

728x90

( 연습문제 / 최댓값과 최솟값 )

[문제]

문제 설명

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최솟값과 최댓값을 찾아 이를 "(최솟값) (최댓값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를 들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.

제한사항

  • s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.

입출력 예시

s return
"1 2 3 4" "1 4"
"-1 -2 -3 -4" "-4 -1"
"-1 -1" "-1 -1"

[풀이]

이번 문제는 아주 간단합니다.

보이는 그대로 문자열을 공백 기준으로 split(" ")을 통하여 자르고 toInt()로 변환 후 해당 리스트에서 min()과 max()로 결과를 반환하면 됩니다.

제 코드에서는 코틀린에서 자주 쓰이는 스코프 함수를 통하여 결과를 반환하였습니다.

여기서 마지막 결과만을 반환해야 하기 때문에 run을 사용하여 결과를 반환하였습니다.


[코드]

class Solution {
    fun solution(s: String): String {
        return s.split(" ").map{ it.toInt() }.let{ "${min()} ${max()}" }
    }
}

문제 링크

 

제가 잘못 알고 있거나 잘못된 부분이 있을 경우 알려주시고 추가로 궁금한 점 있으신 분들도 댓글이나 메일 주시면 성실히 답변해 드리겠습니다.🧑🏻‍💻

감사합니다~😄

728x90