[๋ฐฑ์ค€] 2493. ํƒ‘/Python - Gold5

2025. 3. 1. 15:46ยทCoding Test/Algorithms

โ“๋ฌธ์ œ

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

์„ฑ๋Šฅ ์š”์•ฝ

๋ฉ”๋ชจ๋ฆฌ: 115756 KB, ์‹œ๊ฐ„: 560 ms

๋ถ„๋ฅ˜

์ž๋ฃŒ ๊ตฌ์กฐ, ์Šคํƒ

 

๋ฌธ์ œ ์„ค๋ช…

KOI ํ†ต์‹ ์—ฐ๊ตฌ์†Œ๋Š” ๋ ˆ์ด์ €๋ฅผ ์ด์šฉํ•œ ์ƒˆ๋กœ์šด ๋น„๋ฐ€ ํ†ต์‹  ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์‹คํ—˜์„ ํ•˜๊ณ  ์žˆ๋‹ค. ์‹คํ—˜์„ ์œ„ํ•˜์—ฌ ์ผ์ง์„  ์œ„์— N๊ฐœ์˜ ๋†’์ด๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ํƒ‘์„ ์ˆ˜ํ‰ ์ง์„ ์˜ ์™ผ์ชฝ๋ถ€ํ„ฐ ์˜ค๋ฅธ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ์ฐจ๋ก€๋กœ ์„ธ์šฐ๊ณ , ๊ฐ ํƒ‘์˜ ๊ผญ๋Œ€๊ธฐ์— ๋ ˆ์ด์ € ์†ก์‹ ๊ธฐ๋ฅผ ์„ค์น˜ํ•˜์˜€๋‹ค. ๋ชจ๋“  ํƒ‘์˜ ๋ ˆ์ด์ € ์†ก์‹ ๊ธฐ๋Š” ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ์ง€ํ‘œ๋ฉด๊ณผ ํ‰ํ–‰ํ•˜๊ฒŒ ์ˆ˜ํ‰ ์ง์„ ์˜ ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐœ์‚ฌํ•˜๊ณ , ํƒ‘์˜ ๊ธฐ๋‘ฅ ๋ชจ๋‘์—๋Š” ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ์ˆ˜์‹ ํ•˜๋Š” ์žฅ์น˜๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋‹ค. ํ•˜๋‚˜์˜ ํƒ‘์—์„œ ๋ฐœ์‚ฌ๋œ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ๊ฐ€์žฅ ๋จผ์ € ๋งŒ๋‚˜๋Š” ๋‹จ ํ•˜๋‚˜์˜ ํƒ‘์—์„œ๋งŒ ์ˆ˜์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด ๋†’์ด๊ฐ€ 6, 9, 5, 7, 4์ธ ๋‹ค์„ฏ ๊ฐœ์˜ ํƒ‘์ด ์ˆ˜ํ‰ ์ง์„ ์— ์ผ๋ ฌ๋กœ ์„œ ์žˆ๊ณ , ๋ชจ๋“  ํƒ‘์—์„œ๋Š” ์ฃผ์–ด์ง„ ํƒ‘ ์ˆœ์„œ์˜ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ(์™ผ์ชฝ ๋ฐฉํ–ฅ)์œผ๋กœ ๋™์‹œ์— ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ๋ฐœ์‚ฌํ•œ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿฌ๋ฉด, ๋†’์ด๊ฐ€ 4์ธ ๋‹ค์„ฏ ๋ฒˆ์งธ ํƒ‘์—์„œ ๋ฐœ์‚ฌํ•œ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ๋†’์ด๊ฐ€ 7์ธ ๋„ค ๋ฒˆ์งธ ํƒ‘์ด ์ˆ˜์‹ ์„ ํ•˜๊ณ , ๋†’์ด๊ฐ€ 7์ธ ๋„ค ๋ฒˆ์งธ ํƒ‘์˜ ์‹ ํ˜ธ๋Š” ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘์ด, ๋†’์ด๊ฐ€ 5์ธ ์„ธ ๋ฒˆ์งธ ํƒ‘์˜ ์‹ ํ˜ธ๋„ ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘์ด ์ˆ˜์‹ ์„ ํ•œ๋‹ค. ๋†’์ด๊ฐ€ 9์ธ ๋‘ ๋ฒˆ์งธ ํƒ‘๊ณผ ๋†’์ด๊ฐ€ 6์ธ ์ฒซ ๋ฒˆ์งธ ํƒ‘์ด ๋ณด๋‚ธ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ์–ด๋–ค ํƒ‘์—์„œ๋„ ์ˆ˜์‹ ์„ ํ•˜์ง€ ๋ชปํ•œ๋‹ค.

ํƒ‘๋“ค์˜ ๊ฐœ์ˆ˜ N๊ณผ ํƒ‘๋“ค์˜ ๋†’์ด๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ๊ฐ๊ฐ์˜ ํƒ‘์—์„œ ๋ฐœ์‚ฌํ•œ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ์–ด๋А ํƒ‘์—์„œ ์ˆ˜์‹ ํ•˜๋Š”์ง€๋ฅผ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ.

โœ๐Ÿปํ’€์ด

ํƒ‘์„ ์ˆœ์ฐจ์ ์œผ๋กœ ๋Œ๋ฉด์„œ ์Šคํƒ์˜ top์ด ํƒ‘๋ณด๋‹ค ์ž‘๋‹ค๋ฉด ํ˜„์žฌ ํƒ‘์˜ ๋†’์ด๋ฅผ ์Šคํƒ์— ๋„ฃ์œผ๋ฉด ๋œ๋‹ค. ๋งŒ์•ฝ ์Šคํƒ์˜ top์ด ํƒ‘๋ณด๋‹ค ํฌ๋‹ค๋ฉด ํ•ด๋‹น ํƒ‘์˜ ์ธ๋ฑ์Šค๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ๋ฉˆ์ถ”๋ฉด ๋œ๋‹ค.  

๐Ÿ’ป์ฝ”๋“œ

์ฒ˜์Œ ์ œ์ถœ ์ฝ”๋“œ

import sys

input = sys.stdin.readline

N = int(input())
top = list(map(int, input().split()))
res = [0] * N
temp = []
for i in range(N):
    while temp and temp[-1][1] < top[i]:
        temp.pop()
    if temp:
        res[i] = temp[-1][0]
    temp.append((i+1, top[i]))

print(*res)

์ •๋ฆฌํ•œ ์ฝ”๋“œ

import sys

input = sys.stdin.readline

N = int(input())
top = list(map(int, input().split()))
res = [0] * N
temp = []
for i in range(N):
    while temp:
        if temp[-1][1] > top[i]:
            res[i] = temp[-1][0]
            break
        else:
            temp.pop()

    temp.append((i+1, top[i]))

print(*res)

๐Ÿ“ํ›„๊ธฐ

์ฒ˜์Œ์— ๋’ค์—์„œ๋ถ€ํ„ฐ ํ™•์ธํ• ์ง€ ์•ž์—์„œ๋ถ€ํ„ฐ ํ™•์ธํ• ์ง€ ๊ต‰์žฅํžˆ ๊ณ ๋ฏผ์„ ๋งŽ์ด ํ–ˆ๋‹ค. ๊ทธ๋ž˜๋„ ๊ฒฐ๊ตญ ํ•ด๋‚ด๊ธด ํ–ˆ์ง€๋งŒ ์ฝ”๋“œ๊ฐ€ ๊น”๋”ํ•˜์ง€๋Š” ๋ชปํ–ˆ๋‹คใ…  ์œ„ ๋‘ ์ฝ”๋“œ ๋‹ค ์ •๋‹ต์ด๊ธด ํ•˜์ง€๋งŒ ์ •๋ฆฌํ•œ ํ›„๊ฐ€ ํ™•์‹คํžˆ ๊น”๋”ํ•œ ๊ฒƒ ๊ฐ™๊ณ  ์‹œ๊ฐ„์ด๋‚˜ ๋ฉ”๋ชจ๋ฆฌ ์ธก๋ฉด์—์„œ๋„ ๋” ๋‚˜์€ ๊ฒƒ ๊ฐ™๋‹ค.

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)

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

[๋ฐฑ์ค€]14940. ์‰ฌ์šด ์ตœ๋‹จ๊ฑฐ๋ฆฌ/Python - Silver1  (0) 2025.03.10
[๋ฐฑ์ค€] 17298.์˜คํฐ์ˆ˜/Python - Gold4  (0) 2025.03.07
[๋ฐฑ์ค€] 1202. ๋ณด์„ ๋„๋‘‘/Python - Gold2  (0) 2025.02.28
[๋ฐฑ์ค€] 1655. ๊ฐ€์šด๋ฐ๋ฅผ ๋งํ•ด์š”/Python - Gold2  (0) 2025.02.26
[๋ฐฑ์ค€] 1715. ์นด๋“œ ์ •๋ ฌํ•˜๊ธฐ/Python - Gold4  (0) 2025.02.26
'Coding Test/Algorithms' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
  • [๋ฐฑ์ค€]14940. ์‰ฌ์šด ์ตœ๋‹จ๊ฑฐ๋ฆฌ/Python - Silver1
  • [๋ฐฑ์ค€] 17298.์˜คํฐ์ˆ˜/Python - Gold4
  • [๋ฐฑ์ค€] 1202. ๋ณด์„ ๋„๋‘‘/Python - Gold2
  • [๋ฐฑ์ค€] 1655. ๊ฐ€์šด๋ฐ๋ฅผ ๋งํ•ด์š”/Python - Gold2
The Engineer, Lucy
The Engineer, Lucy
  • The Engineer, Lucy
    Growing up for My Future๐Ÿ’•
    The Engineer, Lucy
    • Instagram
    • GitHub
  • ์ „์ฒด
    ์˜ค๋Š˜
    ์–ด์ œ
    • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (151) N
      • Computer Science (17)
        • Data Structure (0)
        • Algorithms (1)
        • Operating System (3)
        • Network (11)
        • Database System (2)
      • Coding Test (71) N
        • Algorithms (63) N
        • SQL (7)
      • Infra (6)
      • Cloud (21)
        • AWS (2)
        • GCP (3)
        • Docker (4)
        • Kubernetes (12)
      • Linux (26)
      • NGINX (1)
      • CICD (3)
      • IaC (1)
      • ETC (5)
  • ๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

    • ํ™ˆ
    • ํƒœ๊ทธ
    • ๋ฐฉ๋ช…๋ก
  • ๊ณต์ง€์‚ฌํ•ญ

  • ๋งํฌ

    • Lucy's Instagram
    • Lucy's GitHub
  • ์ธ๊ธฐ ๊ธ€

  • ํƒœ๊ทธ

    ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ
    Kubernetes
    ์…ธ ์Šคํฌ๋ฆฝํŠธ
    dfs
    ๋ฆฌ๋ˆ…์Šค
    Shell
    ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค
    programmers
    ๋„์ปค
    ์‰˜ ์Šคํฌ๋ฆฝํŠธ
    network
    ์ž๋ฐ”
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ 2๊ธ‰
    Shell Script
    ๋ฆฌ๋ˆ…์Šค๋งˆ์Šคํ„ฐ
    bfs
    ๋„คํŠธ์›Œํฌ
    ์˜ค๋ธ”์™„
    ํ‹ฐ์Šคํ† ๋ฆฌ์ฑŒ๋ฆฐ์ง€
    ๋„ˆ๋น„์šฐ์„ ํƒ์ƒ‰
    ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
    K8s
    Java
    Baekjoon
    cs ๊ธฐ์ดˆ ์ง€์‹ ์ •๋ฆฌ
    Linux
    ๋ฐฑ์ค€
    ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ณต๋ถ€
    docker
    ๋„คํŠธ์›Œํฌ ๊ธฐ์ดˆ ์ง€์‹
  • ์ตœ๊ทผ ๋Œ“๊ธ€

  • ์ตœ๊ทผ ๊ธ€

  • hELLOยท Designed By์ •์ƒ์šฐ.v4.10.3
The Engineer, Lucy
[๋ฐฑ์ค€] 2493. ํƒ‘/Python - Gold5
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”