Submission #1362789

#TimeUsernameProblemLanguageResultExecution timeMemory
1362789ChinguunRabbit Carrot (LMIO19_triusis)C++20
100 / 100
16 ms4188 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long
#define ff first
#define ss second
#define pb push_back
#define ppb pop_back
#define meta int tm = (tl + tr) / 2, x = i * 2 + 1, y = x + 1

const int N = 2e5 + 7;
const int TN = 4 * N;
const int oo = 1e18;
const int mod = 1e9 + 7;

typedef pair<int, int> pii;
typedef vector<int> vi;
typedef vector<pii> vii;

int n, k, a[N];

signed main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);

	cin >> n >> k;
	for (int i = 1; i <= n; i++) {
		cin >> a[i];
		a[i] = a[i] - k * i;
	}
	vi v;
	v.pb(0);
	for (int i = 1; i <= n; i++) {
		a[i] *= -1;
		if (a[i] < 0) continue;
		int pos = upper_bound(v.begin(), v.end(), a[i]) - v.begin();
		if (pos == v.size()) v.pb(a[i]);
		else v[pos] = a[i];
	}
	cout << n + 1 - v.size();
	return 0;
}
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...
#Result Execution timeMemoryGrader output
Fetching results...