🧩PS/🥈Nomal
[C/C++] 백준 7570번 - 줄 세우기 (DP, LIS)
Cocoon_
2021. 2. 1. 07:42
반응형
<코드>
#include<iostream>
#include<algorithm>
using namespace std;
int N;
int dp[1000001];
int x, ans;
int main()
{
ios::sync_with_stdio(0);
cin.tie(0);
cin >> N;
for (int i = 1; i <= N; i++)
{
cin >> x;
dp[x] = dp[x - 1] + 1;
ans = max(ans, dp[x]);
}
cout << N - ans;
}
풀이 방법
+1씩 증가하는 LIS(최장증가수열)을 찾은 뒤 해당 수열을 고정하고 나머지 어린이들을 이동시키면 됩니다.
7570번: 줄 세우기
입력은 2 개의 줄로 이루어져 있다. 첫 줄에는 어린이 수를 나타내는 정수가 주어진다. 둘째 줄에는 처음에 줄서있는 어린이들의 번호가 차례대로 주어진다. 주어진 번호들 사이에는 공백이 하
www.acmicpc.net
반응형