Submission #1216559

#TimeUsernameProblemLanguageResultExecution timeMemory
1216559howsoxorRabbit Carrot (LMIO19_triusis)C++20
100 / 100
17 ms3012 KiB
#include <bits/stdc++.h> using namespace std; int lis(const vector<int>& a, int x) { vector<int> ret; ret.push_back(x); for (int i = 0; i < a.size(); i++) { int it = a[i]; auto pos = lower_bound(ret.begin(), ret.end(), it + 1); if (pos == ret.end()) { ret.push_back(it); } else { ret[pos - ret.begin()] = it; } } return (int)ret.size(); } int32_t main() { ios::sync_with_stdio(false); cin.tie(nullptr); int n, m; cin >> n >> m; vector<int> f; f.reserve(n); for (int i = 1; i <= n; i++) { int x; cin >> x; f.push_back(i * m - x); } vector<int> g; g.reserve(n); for (int v : f) { if (v >= 0) g.push_back(v); } cout << n + 1 - lis(g, 0) << "\n"; 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...