Submission #982588

#TimeUsernameProblemLanguageResultExecution timeMemory
982588vjudge1Rabbit Carrot (LMIO19_triusis)C++17
100 / 100
22 ms6768 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define int long long #define For(i, a, b) for (int i = (a); i <= (b); i++) #define Ford(i, a, b) for (int i = (b); i >= (a); i --) #define Rep(i, n) for (int i = 0; i < (n); ++i) #define Repd(i, n) for (int i = (n) - 1; i >= 0; --i) #define overload(_1, _2, _3, NAME, ...) NAME #define FOR(...) overload(__VA_ARGS__, For, Rep)(__VA_ARGS__) #define FORD(...) overload(__VA_ARGS__, Ford, Repd)(__VA_ARGS__) #define MASK(i) (1LL << (i)) #define BIT(x, i) (((x) >> (i)) & 1) constexpr ll LINF = (1ll << 60); constexpr int INF = (1ll << 30); constexpr int Mod = 1e9 + 7; mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); void setupIO(){ #define name "Whisper" //Phu Trong from Nguyen Tat Thanh High School for gifted student srand(time(NULL)); cin.tie(nullptr)->sync_with_stdio(false); cout.tie(nullptr); //freopen(name".inp", "r", stdin); //freopen(name".out", "w", stdout); cout << fixed << setprecision(10); } template <class X, class Y> bool minimize(X &x, const Y &y){ X eps = 1e-9; if (x > y + eps) {x = y; return 1;} return 0; } template <class X, class Y> bool maximize(X &x, const Y &y){ X eps = 1e-9; if (x + eps < y) {x = y; return 1;} return 0; } int nArr, Lim; const int MAX = 2e5 + 5; int A[MAX]; #define VALUE(x)(((x) * ((x) + 1)) >> 1LL) int upd[MAX]; void Whisper(){ cin >> nArr >> Lim; for (int i = 1; i <= nArr; ++i) cin >> A[i], A[i] -= i * Lim; //if A(i) > 0 we need to change A(i)'s height vector<int> next; for (int i = nArr; i >= 1; --i){ if (A[i] > 0) continue; auto it = upper_bound(next.begin(), next.end(), A[i]); if (it == next.end()){ next.push_back(A[i]); } else *it = A[i]; } cout << nArr - (int)next.size(); } signed main(){ setupIO(); int Test = 1; // cin >> Test; for ( int i = 1 ; i <= Test ; i++ ){ Whisper(); if (i < Test) cout << '\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...