Submission #1298122

#TimeUsernameProblemLanguageResultExecution timeMemory
1298122EkinOnalRabbit Carrot (LMIO19_triusis)C++20
100 / 100
20 ms2712 KiB
#include <bits/stdc++.h>
using namespace std;

#define vi vector<int>


void solve(){
	int n,m; cin>>n>>m;

	vi arr(n+5); 
	for(int i=1;i<=n;i++) cin>>arr[i],arr[i]-=i*m;
	for(int i=1;i<=n;i++) arr[i]=-arr[i];

	vi lis; int idx=0;
	for(int i=1;i<=n;i++){
		if(arr[i]<0) continue;

		auto itr = upper_bound(lis.begin(),lis.end(),arr[i]);
		if(lis.empty() || itr==lis.end() ) {lis.push_back(arr[i]);continue;}
		else{
			int pos=itr-lis.begin();
			lis[pos]=arr[i];
		}
	}	
	// for(auto u : lis) cout<<u<<" ";cout<<endl;
	cout<<n-(int)lis.size()<<endl;

}		
	
int32_t main(/*int32_t argc, char* argv[]*/){
	std::ios_base::sync_with_stdio(0); std::cin.tie(0);		
	// freopen("cowjog.in", "r", stdin);
	// freopen("cowjog.out", "w", stdout);

	int t=1;
	// cin >> t;
	while (t--) solve();
 	
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...