소스코드
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
vector<int>v(n);
vector<int>dp(n, 1);
for (int i = 0; i < v.size(); i++)
{
cin >> v[i];
}
reverse(v.begin(), v.end());
for (int i = 1; i < v.size(); i++)
{
for (int j = 0; j < i; j++)
{
if (v[i] > v[j])
{
dp[i] = max(dp[i], dp[j] + 1);
}
}
}
int cnt = 1;
int result = 0;
for (int i = 0; i < dp.size(); i++)
{
//cout << dp[i] << " ";
if (cnt == dp[i])
cnt++;
else
result++;
}
cout << result;
return 0;
}