Skip to content

Instantly share code, notes, and snippets.

@Chocochip101
Created September 3, 2021 03:36
#include <bits/stdc++.h>
#define endl "\n"
#define ll long long
#define INF 987654321
#define MAX 201
#define MOD 100000
using namespace std;
typedef pair<int, int> p;
int n, numbers[MAX];
int cache[MAX];
//Lis
int solve(int idx) {
int& ret = cache[idx + 1];
if (ret != -1) return ret;
ret = 0;
for (int i = idx + 1; i < n; ++i)
if (idx == -1 || numbers[idx] < numbers[i])
ret = max(ret, solve(i) + 1);
return ret;
}
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
memset(cache, -1, sizeof(cache));
cin >> n;
for (int i = 0; i < n; ++i)
cin >> numbers[i];
cout << n - solve(-1) << endl;
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment