https://www.acmicpc.net/problem/2631
이 문제는 보아도 모르겠어서
해당 블로그를 통해 이해를 하게되었다 https://ddiyeon.tistory.com/61
내가 제출한 코드는 다음과 같다
from bisect import bisect_left
n = int(input())
arr = []
for _ in range(n):
arr.append(int(input()))
dp = []
for i in range(len(arr)):
if not dp:
dp.append(arr[i])
else:
if dp[-1] < arr[i]:
dp.append(arr[i])
else:
dp[bisect_left(dp, arr[i])] = arr[i]
print(n - len(dp))