Submission #739772

#TimeUsernameProblemLanguageResultExecution timeMemory
739772Dead_Inside7Rabbit Carrot (LMIO19_triusis)C++17
100 / 100
82 ms5276 KiB
#include <bits/stdc++.h>
using namespace std;
int lis(vector<int>&b){
	vector<int> dp;
	for(auto it:b){
		int x = upper_bound(dp.begin(),dp.end(),it) -  dp.begin();
		if(x==dp.size()) dp.push_back(it);
		else dp[x]=it;
	}
	return dp.size();
}
int main() {
	int n,k;cin>>n>>k;
	vector<int> arr(n);
	for(auto&v:arr) cin>>v;
    vector<int> b;
    for(int j=1;j<=n;j++){
    	int x = ((k*j) - arr[j-1]);
    	if(x>=0) b.push_back(x);
    }
    cout<<n-lis(b)<<endl;
	return 0;
}

Compilation message (stderr)

triusis.cpp: In function 'int lis(std::vector<int>&)':
triusis.cpp:7:7: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
    7 |   if(x==dp.size()) dp.push_back(it);
      |      ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...