๊ธฐ๋ก๋ฐฉ

BOJ_17608 : ๋ง‰๋Œ€๊ธฐ ๋ณธ๋ฌธ

CodingTest/Python

BOJ_17608 : ๋ง‰๋Œ€๊ธฐ

Soom_1n 2022. 8. 14. 19:46

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

17608๋ฒˆ: ๋ง‰๋Œ€๊ธฐ

์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๋†’์ด๋งŒ ๋‹ค๋ฅด๊ณ  (๊ฐ™์€ ๋†’์ด์˜ ๋ง‰๋Œ€๊ธฐ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ) ๋ชจ์–‘์ด ๊ฐ™์€ ๋ง‰๋Œ€๊ธฐ๋ฅผ ์ผ๋ ฌ๋กœ ์„ธ์šด ํ›„, ์™ผ์ชฝ๋ถ€ํ„ฐ ์ฐจ๋ก€๋กœ ๋ฒˆํ˜ธ๋ฅผ ๋ถ™์ธ๋‹ค. ๊ฐ ๋ง‰๋Œ€๊ธฐ์˜ ๋†’์ด๋Š” ๊ทธ๋ฆผ์—์„œ ๋ณด์ธ ๊ฒƒ์ฒ˜๋Ÿผ ์ˆœ์„œ๋Œ€๋กœ

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ๋ณด๋Š” ๋ฐฉํ–ฅ์—์„œ ๋ดค์„๋•Œ ๋ณด์ด๋Š” ๋ธ”๋Ÿญ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  • ์Šคํƒ์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ€๋ ค์ง€๋Š” ๋ธ”๋ก์„ ์ œ๊ฑฐํ•˜๋ฉด ๋˜๋Š” ๋ฌธ์ œ์ด๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

import sys

input = sys.stdin.readline

N = int(input())

arr = [0]

for i in range(N):
    h = int(input())
    while True:
        if len(arr) == 0:
            arr.append(h)
            break
        elif arr[-1] <= h:
            arr.pop()
        else:
            arr.append(h)
            break
print(len(arr))

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • ๋ฆฌ์ŠคํŠธ๋ฅผ ์Šคํƒ์œผ๋กœ ์‚ฌ์šฉํ–ˆ๋‹ค.
  • ๋ฌธ์ œ ์‹œ๊ฐ„์ œํ•œ์œผ๋กœ ๋น ๋ฅธ ์ž…๋ ฅ์„ ์‚ฌ์šฉํ–ˆ๋‹ค.
  • ์Šคํƒ์˜ ๊ฐ€์žฅ ์œ„ ๊ฐ’๋ณด๋‹ค ํฐ ๊ฐ’์ด ๋“ค์–ด์˜ค๋ฉด popํ•œ๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋– ์„œ ๋น ๋ฅธ์ž…์ถœ๋ ฅ์„ ์ถ”๊ฐ€ํ–ˆ๋Š”๋ฐ, ๋ฌธ์ œ ์กฐ๊ฑด์„ ๋ณด๊ณ  ๋ฏธ๋ฆฌ ๋Œ€๋น„ํ•  ํ•„์š”๊ฐ€ ์žˆ์–ด๋ณด์ธ๋‹ค.
    (์ดˆ๊ณผ๋˜๋Š”์ง€ ๊ถ๊ธˆํ•ด์„œ ๋ˆŒ๋Ÿฌ๋ณด๊ฒŒ ๋œ๋‹ค..)
  • while๋ฌธ ์•ˆ์˜ if๊ณผ else๋ฌธ์„ ํ•ฉ์น˜๋ฉด ๋” ์ข‹์•˜์„ ๊ฒƒ ๊ฐ™๋‹ค.

728x90

'CodingTest > Python' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

BOJ_18258 : ํ 2  (0) 2022.08.15
BOJ_1935 : ํ›„์œ„ ํ‘œ๊ธฐ์‹2  (0) 2022.08.14
BOJ_10845 : ํ  (0) 2022.08.11
BOJ_10816 : ์ˆซ์ž ์นด๋“œ 2  (0) 2022.08.10
BOJ_10773 : ์ œ๋กœ  (0) 2022.08.09