๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Kotlin/Programmers Algorithm

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์ฝ”ํ‹€๋ฆฐ] ์ œ์ผ ์ž‘์€ ์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ #12935

by eun.24k 2023. 10. 30.

# 12935

๐ŸŽ„ Question ?

https://school.programmers.co.kr/learn/courses/30/lessons/12935

class Solution {
    fun solution(arr: IntArray): IntArray {
        var answer = intArrayOf()
        return answer
    }
}

๐Ÿงฉ Thought Process

  1. ๋ฐฐ์—ด์„ ๋ฎคํ„ฐ๋ธ”๋ฆฌ์ŠคํŠธ๋กœ ์ˆ˜์ •
  2. ๋ฎคํ„ฐ๋ธ”๋ฆฌ์ŠคํŠธ์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์—˜๋ ˆ๋จผํŠธ ์ฐพ๊ธฐ
  3. ๊ทธ ์—˜๋ ˆ๋จผํŠธ ์ง€์šฐ๊ธฐ
  4. ๋งŒ์•ฝ ๋ฆฌ์ŠคํŠธ ์‚ฌ์ด์ฆˆ๊ฐ€ ์›๋ž˜ 1์ด์—ˆ๋‹ค๋จธ๋ฉด -1 ๋ฆฌํ„ดํ•˜๊ธฐ
  5. ๋งˆ์ง€๋ง‰  ์ „์— intarray๋กœ ๋ณ€๊ฒฝํ•˜๊ธฐ
์™œ ์ธ์ง€ ๋ชจ๋ฅด๊ฒ ๋Š”๋ฐ ๊ณ„์† ์—๋Ÿฌ๊ฐ€ ๋‚˜์„œ ๋ชป ํ’€์—ˆ๋”ฐ.

 

๐ŸŽ€ Answer

๊ทธ๋ž˜์„œ ์ธํ„ฐ๋„ท์—์„œ ์ฐพ์€ ๋‹ต!

class Solution {
    fun solution(arr: IntArray): IntArray {
        val space = IntArray(1,{-1})
        if(arr.size == 1) return space

        var min = arr.minOrNull()
        var minOutList = arr.toMutableList()
        minOutList.remove(min)


        return minOutList.toIntArray()
    }
}

min() ํ•จ์ˆ˜์—์„œ ์ž๊พธ ์—๋Ÿฌ๊ฐ€ ๋‚ฌ์—ˆ๋Š”๋ฐ .inOrNull() ์‚ฌ์šฉ์„ ํ•ด์ฃผ๋ฉด ๋”ฐ๋กœ ์ž„ํฌํŠธ๋ฅผ ์•ˆํ•ด์ฃผ๊ณ ๋„ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋‚˜๋ณด๋‹ค.

array์—์„œ ๋ฏธ๋‹ˆ๋ฉˆ ๊ฐ’์„ ์ฐพ์•„ ์ค€ ํ›„์— ๋ฎคํ„ฐ๋ธ”  ๋ฆฌ์ŠคํŠธ๋กœ ๋ฐ”๊พธ์–ด์ค€ ๊ฒƒ์„ ํ™•์ธํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค.

๋ฎคํ„ฐ๋ธ” ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋˜์–ด์•ผ๋งŒ ์—˜๋ฆฌ๋จผํŠธ๋ฅผ ์ œ๊ฑฐํ•ด ์ค„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ฎคํ„ฐ๋ธ” ๋ฆฌ์ŠคํŠธ์ธ ์ƒํƒœ์—์„œ ์ตœ์†Ÿ๊ฐ’์„ ์ œ๊ฑฐํ•ด์ค€๋‹ค.

์ด๋ ‡๊ฒŒ ์ œ๊ฑฐํ•œ ๋ฆฌ์ŠคํŠธ๋ฅผ IntArray๋กœ ๋‹ค์‹œ ๋ฐ”๊พธ์–ด์ค€ ํ›„ ๋ฐ˜ํ™˜ํ•ด์ฃผ๋ฉด ๋œ๋‹ค!

๐ŸŽ Result

 

 

๐Ÿ† Comment

ํ’€๋ฉด์„œ ์ƒ๋‹นํžˆ ๋‹ต๋‹ตํ–ˆ๋‹ค minํ•จ์ˆ˜๋ฅผ ์ •ํ™•ํ•˜๊ฒŒ ์ฐพ์•˜๋Š”๋ฐ ์™œ ์•ˆ๋˜์ง€? ํ•˜๋ฉด์„œ ๋ง์ด๋‹ค..