์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ/BOJ_Python

[BOJ/Step15] 2565 : ์ „๊นƒ์ค„ (Python)

NaNaRin๐Ÿ™ƒ 2021. 3. 1. 16:41

www.acmicpc.net/problem/2565

 

2565๋ฒˆ: ์ „๊นƒ์ค„

์ฒซ์งธ ์ค„์—๋Š” ๋‘ ์ „๋ด‡๋Œ€ ์‚ฌ์ด์˜ ์ „๊นƒ์ค„์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ „๊นƒ์ค„์˜ ๊ฐœ์ˆ˜๋Š” 100 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ „๊นƒ์ค„์ด A์ „๋ด‡๋Œ€์™€ ์—ฐ๊ฒฐ๋˜๋Š” ์œ„์น˜์˜ ๋ฒˆํ˜ธ์™€ B์ „๋ด‡๋Œ€์™€ ์—ฐ๊ฒฐ๋˜๋Š”

www.acmicpc.net


ํ—ˆํ—ˆ ๋ฆฌ์ŠคํŠธ์— ๊ต์ฐจ์  ๋‹ค ๋„ฃ๊ณ  ์ง€์šฐ๊ณ  ๋„ฃ๊ณ  ๋นผ๊ณ  ๋‚œ๋ฆฌ๋‚œ๋ฆฌ๋ฅผ ์ณค๋Š”๋ฐ

๋ฐ˜๋ก€๋ฅผ ์—†์•จ ์ˆ˜๊ฐ€ ์—†์–ด์„œ ๋Œ€์ฒด ์–ด๋–ป๊ฒŒ ํ‘ธ๋Š”๊ฑด๊ฐ€ ๋ดค๋”๋‹ˆ

์ฐธ.. ์„ธ์ƒ์— ์ด๋Ÿฐ ๋ฐฉ๋ฒ•์ด..... ๋˜‘๋˜‘ํ•œ ์‚ฌ๋žŒ ๊ฐœ๋งŽ๋‹ค ์ฆ๋ง ใ…œ

์–ด์ฉ์ง€ ์•ž์— ๋ฌธ์ œ๊ฐ€ ๋œฌ๊ธˆ์—†๋‹ค ํ–ˆ๋Š”๋ฐ ์จ๋จน์œผ๋ผ๊ณ  ์•Œ๋ ค์ค€๊ฑฐ๊ตฌ๋‚˜....

 

์—†์• ์•ผ ํ•˜๋Š” ์ „๊นƒ์ค„์˜ ์ตœ์†Œ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค๋Š”๊ฑด

์—†์• ์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋†”๋‘˜ ์ „๊นƒ์ค„์˜ ์ตœ๋Œ€ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค

 

A ์ „๋ด‡๋Œ€ ๊ธฐ์ค€ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ–ˆ์„ ๋•Œ

B ์ „๋ด‡๋Œ€์— ์—ฐ๊ฒฐ๋œ ๋ฒˆํ˜ธ๊ฐ€ ์˜ค๋ฆ„์ฐจ์ˆœ์ธ ๊ฐ€์žฅ ๊ธด ์ „๊นƒ์ค„์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค

์ฆ‰ ์•ž ๋ฌธ์ œ 11053 : ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด ์„ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค

 

1. ์ „๊นƒ์ค„์„ ์ž…๋ ฅ๋ฐ›์•„ wire์— ์ €์žฅ, ์ •๋ ฌํ•œ๋‹ค

2. ์ •๋ ฌ๋œ wire์˜ B ์ „๊นƒ์ค„ ๋ถ€๋ถ„์„ seq์— ์ €์žฅํ•˜๊ณ  ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์„ ๊ตฌํ•œ๋‹ค

3. ์ „๊นƒ์ค„์˜ ๊ฐœ์ˆ˜ - ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์˜ ๊ธธ์ด ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค

# 2565.py

num = int(input())
wire = [[i for i in map(int, input().split())] for _ in range(num)]
wire.sort()

seq = [i[1] for i in wire]
t_seq = [1] + [0 for _ in range(num-1)]

for i in range(1, num):
    a = [0]
    for j in range(i):
        if seq[j] < seq[i]:
            a.append(t_seq[j])
    t_seq[i] = max(a) + 1

print(num - max(t_seq))