π© [λ°±μ€] [Python] [Gold5] 2565λ²_μ κΉμ€
λ¬Έμ
https://www.acmicpc.net/problem/2565
2565λ²: μ κΉμ€
첫째 μ€μλ λ μ λ΄λ μ¬μ΄μ μ κΉμ€μ κ°μκ° μ£Όμ΄μ§λ€. μ κΉμ€μ κ°μλ 100 μ΄νμ μμ°μμ΄λ€. λμ§Έ μ€λΆν° ν μ€μ νλμ© μ κΉμ€μ΄ Aμ λ΄λμ μ°κ²°λλ μμΉμ λ²νΈμ Bμ λ΄λμ μ°κ²°λλ
www.acmicpc.net
νμ΄
# λ°±μ€ 2565λ² λ¬Έμ - μ κΉμ€
n = int(input())
line = sorted([list(map(int, input().split())) for _ in range(n)])
dp = [1] * n
for i in range(n):
for j in range(i):
if line[i][1] > line[j][1]:
dp[i] = max(dp[i], dp[j] + 1)
print(n - max(dp))
DP λ¬Έμ μ΄λ€.
μ κΉμ€μ A κΈ°μ€μΌλ‘ μ λ ¬ ν Bμ λνμ¬ κ°μ₯ κΈ΄ μ¦κ°νλ λΆλΆ μμ΄μ ꡬνλ©΄ λλ€.
μ¬κΈ°μ κ°μ₯ κΈ΄ μ¦κ°νλ λΆλΆ μμ΄μ ꡬν΄μΌ νλ μ΄μ λ μ¦κ°νλ μμ΄μ΄λΌλ©΄ μ κΉμ€μ΄ κ΅μ°¨λλ μΌμ΄ λ°μνμ§ μλλ€.
λ°λΌμ λΆλΆ μμ΄μ μ΅λκ°μ μ¦, μ κ±°νμ§ μμλ λλ μ κΉμ€μ΄ λλ κ²μ΄λ€.
κ·Έλ¬λ―λ‘ nκ°μ μ κΉμ€μμ μ κ±°νμ§ μμλ λλ μ κΉμ€μ λΉΌλ©΄ μ κ±°ν΄μΌ νλ μ κΉμ€μ΄ λμ¨λ€.
μ΄λ¬ν νμ΄λ₯Ό λ μ¬λ¦¬λλ° λ무 볡μ‘νκ² μκ°ν΄μ μ΄λ €μμ΄ μλ κ² κ°λ€.