#include <bits/stdc++.h>
using namespace std;
#define int long long
#define INF 9e18
void solve() {
int n, k;
cin >> n >> k;
vector<int> a(n), sorted(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
sorted[i] = a[i];
}
sort(sorted.begin(), sorted.end());
vector<int> team_id(n);
for (int i = 0; i < n; i++) {
int pos = lower_bound(sorted.begin(), sorted.end(), a[i]) - sorted.begin();
team_id[i] = pos / k;
}
vector<int> dp(n, 1);
for (int i = 0; i < n; i++) {
for (int j = 0; j < i; j++) {
if (team_id[j] <= team_id[i]) {
dp[i] = max(dp[i], dp[j] + 1);
}
}
}
cout << n - *max_element(dp.begin(), dp.end());
}
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
solve();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |