[백준] 삼각형과 세 변 (5073)(kotlin)

문제 설명

백준 5073번 문제 링크

입력 및 출력

» 입력

각 줄에는 1,000을 넘지 않는 양의 정수 3개가 입력된다. 마지막 줄은 0 0 0이며 이 줄은 계산하지 않는다.

» 출력

각 입력에 맞는 결과 (Equilateral, Isosceles, Scalene, Invalid) 를 출력하시오.

예제 입출력(테스트케이스)

입력 출력
7 7 7
6 5 4
3 2 5
6 2 6
0 0 0
Equilateral
Scalene
Invalid
Isosceles

문제 풀이1

import java.io.BufferedReader
import java.io.InputStreamReader

fun main(args: Array<String>) = with(BufferedReader(InputStreamReader(System.`in`))) {
    while (true) {
        val triangle = readLine().split(" ").map { it.toInt() }.sorted()
        if (triangle[0] == 0) break

        if (triangle[2] >= triangle[0] + triangle[1]) {
            println("Invalid")
        } else {
            when (triangle.groupBy { it }.size) {
                1 -> println("Equilateral")
                2 -> println("Isosceles")
                else -> println("Scalene")
            }
        }
    }
}