[프로그래머스] 최소직사각형

Sdoubleu·2024년 3월 1일
0

프로그래머스

목록 보기
34/34
post-thumbnail

문제


제한 사항


입출력 예시



내가 쓴 풀이

class Solution {
    fun solution(sizes: Array<IntArray>): Int {
        var hMax = sizes[0][0]
        for (i in sizes) {
            val max = if (i[0] <= i[1]) i[1] else i[0]
            if (hMax <= max) hMax = max
        }
        
        var maxOfMin = 0
        for (i in sizes) {
            if(i[0] < i[1]) { 
                if( maxOfMin <= i[0]) maxOfMin = i[0] 
            } 
            else { 
                if( maxOfMin <= i[1]) maxOfMin = i[1] 
            }
    }
        
        return hMax * maxOfMin
    }
}

입력 받은 배열에서 제일 큰수와 제일 작은 수를 구한 후
작은 수 중에서 제일 큰 수를 구하여 둘을 곱해주었다


다른 사람 풀이

import kotlin.math.max
import kotlin.math.min

class Solution {
    fun solution(sizes: Array<IntArray>): Int {
        val widths = mutableListOf<Int>()
        val heights = mutableListOf<Int>()

        sizes.forEach {
            widths.add(max(it[0], it[1]))
            heights.add(min(it[0], it[1]))
        }

        return widths.max()!! * heights.max()!!
    }
}

내가 쓴 코드를 max()와 min() 함수를 사용해서 간략하게 적은 모습을 보고 감탄했다 . . .

profile
개발자희망자

0개의 댓글