๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ’ฏ | ๋ฐฑ์ค€/๐Ÿ™‚ | Silver

[Kotlin, S2] ๋ฐฑ์ค€ 2232๋ฒˆ ์ง€๋ขฐ

by immgga 2024. 10. 21.

์ถœ์ฒ˜: unsplash.com

์ง€๋ขฐ(2232๋ฒˆ)

Silver 2

#๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ #์ •๋ ฌ

https://www.acmicpc.net/problem/2232

 

๋ฌธ์ œ ๋‚ด์šฉ

 

 

๋ฌธ์ œ ์ ‘๊ทผ

์ง€๋ขฐ๋ฅผ ๋ชจ๋‘ ํ„ฐํŠธ๋ฆฌ๋Š” ์ตœ์†Œ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค.

์ง์ ‘ ํ„ฐํŠธ๋ฆฌ๋Š” ์ง€๋ขฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ์ตœ์†Œ๋กœ ํ•˜๋ ค๋ฉด ์—ฐ์‡„์ ์œผ๋กœ ํ„ฐ์ง€๋Š” ์ง€๋ขฐ์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋งŽ์€ ๊ณณ์„ ์œ„์ฃผ๋กœ ํ„ฐํŠธ๋ฆฌ๋ฉด ๋œ๋‹ค.

 

์ง์ ‘ ํ„ฐํŠธ๋ฆฌ๋Š” ์ง€๋ขฐ์˜ ์œ„์น˜์—์„œ ์™ผ์ชฝ ๋ฐฉํ–ฅ์€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ˆ˜๊ฐ€ ์ •๋ ฌ๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๊ณ , ์˜ค๋ฅธ์ชฝ ๋ฐฉํ–ฅ์€ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง€๋ขฐ๊ฐ€ ์žˆ์„ ๋•Œ,

1 2 5 4 3 3 6 6 2

3, 7, 8๋ฒˆ์˜ ์ง€๋ขฐ๋ฅผ ์ง์ ‘ ํ„ฐํŠธ๋ฆฌ๋ฉด ๋ชจ๋“  ์ง€๋ขฐ๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋‹ค.

 

์ง€๋ขฐ๊ฐ€ ์—ฐ์‡„์ ์œผ๋กœ ํ„ฐ์ง€๋ ค๋ฉด ์™ผ์ชฝ์€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ค‘๋ณต ์—†์ด ์ •๋ ฌ๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๊ณ , ์˜ค๋ฅธ์ชฝ์€ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ค‘๋ณต ์—†์ด ์ •๋ ฌ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค.

 

์˜ค๋ฆ„์ฐจ์ˆœ์ด ๋Š๊ธฐ๋ฉด ๋Š๊ธด ๋ถ€๋ถ„์˜ ์ด์ „ ๋ถ€๋ถ„์ด ์ง์ ‘ ํ„ฐํŠธ๋ฆด ์ง€๋ขฐ ๋ฒˆํ˜ธ๊ฐ€ ๋œ๋‹ค.

์ง€๋ขฐ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋˜๋ฉด ๋‚ด๋ฆผ์ฐจ์ˆœ์ด ๋Š๊ธฐ๋Š” ๋ถ€๋ถ„์ด ํ„ฐ์ง€๋Š” ์ง€๋ขฐ๋“ค์ด ๋  ๊ฒƒ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ง€๋ขฐ ๋ฒˆํ˜ธ๋ฅผ ํ•ด์ œํ•œ๋‹ค. ์ด๋ฏธ ํ„ฐํŠธ๋ ธ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

์ด๋ฅผ ๋ฐ˜๋ณตํ•˜๋ฉด ์ตœ์†Œํ•œ์œผ๋กœ ์ง์ ‘ ํ„ฐํŠธ๋ ค์„œ ์ง€๋ขฐ๋ฅผ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค.

 

 

๋ฌธ์ œ ํ•ด๊ฒฐ ์ฝ”๋“œ

๋”๋ณด๊ธฐ
import java.io.BufferedReader
import java.io.InputStreamReader

fun main() {
    val bf = BufferedReader(InputStreamReader(System.`in`))
    val n = bf.readLine().toInt()
    var boomIndex = -1
    var before = 0

    for (i in 0 until n) {
        val p = bf.readLine().toInt()
        if (i != 0) {
            if (boomIndex == -1 && before >= p) {
                boomIndex = i

                println(boomIndex)
            }

            if (boomIndex != -1 && before <= p) {
                boomIndex = -1
            }
        }

        before = p
        if (i == n - 1) {
            if (boomIndex == -1) println(n)
        }
    }
}

 

๋ฌธ์ œ ํ’€์ด

์ง์ ‘ ์ž…๋ ฅ๋ฐ›์œผ๋ฉด์„œ ์ฒ˜๋ฆฌํ–ˆ๋‹ค.

์ด์ „ ๊ฐ’์„ ์ €์žฅํ•  ๋ณ€์ˆ˜๋ฅผ ์ƒ์„ฑํ•ด ์ฒซ ๋ฐ์ดํ„ฐ์ผ ๋•Œ๋Š” ์ด์ „ ๊ฐ’์„ ์ดˆ๊ธฐํ™”ํ•ด ์ค€๋‹ค.

๊ทธ๋‹ค์Œ 2๋ฒˆ์งธ ์ž…๋ ฅ๋ถ€ํ„ฐ๋Š” ์ง€๋ขฐ ๋ฒˆํ˜ธ์ธ boomIndex๊ฐ€ ์ง€์ •๋˜์ง€ ์•Š์•˜์„ ๋•Œ๋Š”(-1) ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ๊ฒ€์‚ฌํ•œ๋‹ค.

๋‚ด๋ฆผ์ฐจ์ˆœ์ด ๋Š๊ธฐ๋ฉด boomIndex๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๋ฐ”๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ์„ ๊ฒ€์‚ฌํ•œ๋‹ค.

์˜ค๋ฆ„์ฐจ์ˆœ ๊ฒ€์‚ฌ๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ๊ณผ๋Š” ๋ฐ˜๋Œ€๋กœ ํ„ฐํŠธ๋ฆด ์ง€๋ขฐ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋˜๋ฉด ๊ฒ€์‚ฌํ•œ๋‹ค.

์˜ค๋ฆ„์ฐจ์ˆœ์ด ๋Š๊ธฐ๋ฉด boomIndex๋ฅผ ์ดˆ๊ธฐ๊ฐ’์œผ๋กœ ๋ณ€๊ฒฝํ•˜๊ณ  ๋‹ค์‹œ ๋‚ด๋ฆผ์ฐจ์ˆœ ๊ฒ€์‚ฌ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค.

 

์ด๋ ‡๊ฒŒ ๊ตฌํ˜„ํ•˜๋ฉด ๋งˆ์ง€๋ง‰ ์ง€๋ขฐ ๋นผ๊ณ  ์ง์ ‘ ํ„ฐํŠธ๋ฆด ์ง€๋ขฐ๋ฅผ ์ตœ์†Œ๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

๋งˆ์ง€๋ง‰ ์ง€๋ขฐ๋ฅผ ์ง์ ‘ ํ„ฐํŠธ๋ ค์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ„ฐํŠธ๋ฆด ์ง€๋ขฐ ๋ฒˆํ˜ธ๊ฐ€ ์ง€์ •๋˜์ง€ ์•Š์•˜์„ ๋•Œ๋งŒ ๋งˆ์ง€๋ง‰ ๋ฒˆํ˜ธ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

 

 

๋ฌธ์ œ ํ•ด๊ฒฐ ๊ณผ์ •

์˜ค๋ฆ„์ฐจ์ˆœ/๋‚ด๋ฆผ์ฐจ์ˆœ ๊ฒ€์‚ฌ๋ฅผ ๊ฐ™์ด ์ง„ํ–‰ํ•˜์ง€ ์•Š์•„์„œ ๋ฐœ์ƒํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค.

๊ฐ™์ด ์ง„ํ–‰ํ•˜์ง€ ์•Š์œผ๋ฉด ์ž…๋ ฅ ์˜ˆ์ œ 1์˜ ์—ฐ์†๋œ 6์ด ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ๋ฐ”๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†์–ด ์˜ค๋‹ต์ด ๋œ๋‹ค.

728x90