#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
ll n,k,i,j,q,ans=0;
cin>>n>>k;
q=k;
vector<ll> a(n);
vector<pair<ll,ll>> b(n);
for(i=0 ; i<n ; i++){
cin>>a[i];
b[i]={a[i],i};
}
sort(b.begin(),b.end());
for(i=0 ; i<n ; i++){
if(i!=0 and (i+1)%k==1) q=q+k;
a[b[i].second]=q;
}
if(k==1){
for(i=0 ; i<n ; i++){
a[b[i].second]=i+1;
}
}
vector<ll> dp(n+1, 1);
for(i=0 ; i<n ; i++) {
for(j=0 ; j<i ; j++) {
if(a[j]<=a[i]) dp[i]=max(dp[i],dp[j]+1);
}
}
for(i=0 ; i<n ; i++) ans=max(ans,dp[i]);
cout<<n-ans;
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... |