Submission #774587

#TimeUsernameProblemLanguageResultExecution timeMemory
774587vgoofficialRabbit Carrot (LMIO19_triusis)C++14
100 / 100
23 ms4164 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
int main() {
    ios_base::sync_with_stdio(false); 
    cin.tie(0);
    int n,m;
    cin >> n >> m;
    int heights[n];
    for(int i = 0; i < n; i++) {
        int h;
        cin >> h;
        h-=(i+1)*m;
        heights[i]=h;
    }
    vector<int> magic;
    int i = n-1;
    for(; i >= 0; i--) {
        if(heights[i]>0) continue;
        magic.push_back(heights[i]);
        i--;
        break;
    }
    for(;i>=0;i--) {
        if(heights[i]>0) continue;
        int ub = upper_bound(begin(magic), end(magic), heights[i])-begin(magic);
        if(ub==magic.size()) {
            magic.push_back(heights[i]);
        } else {
            magic[ub]=heights[i];
        }
    }
    cout << n-magic.size() << endl;
}

Compilation message (stderr)

triusis.cpp: In function 'int main()':
triusis.cpp:27:14: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |         if(ub==magic.size()) {
      |            ~~^~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...