Submission #636330

#TimeUsernameProblemLanguageResultExecution timeMemory
636330gromperenRabbit Carrot (LMIO19_triusis)C++14
100 / 100
25 ms4180 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long


int main(){
	ios::sync_with_stdio(0);
	cin.tie(0);

	int n,m; cin >> n >> m;
	vector<int> a(n);
	for (int i = 0; i < n; ++i) {
		cin >> a[i];
		a[i] -= (i+1)*m;
	}
	reverse(a.begin(), a.end());
	vector<int>dp;
	for (int i = 0; i < n; ++i) {
		if (a[i]>0) continue;
		int j = upper_bound(dp.begin(), dp.end(), a[i]) - dp.begin();
		if (j == dp.size()) dp.push_back(a[i]);
		else dp[j] = a[i];
	}
	cout << n - dp.size() << "\n";

	return 0;
}

Compilation message (stderr)

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