Submission #954490

#TimeUsernameProblemLanguageResultExecution timeMemory
954490vjudge1Rabbit Carrot (LMIO19_triusis)C++17
100 / 100
21 ms2776 KiB
#include <bits/stdc++.h>
#define fastio ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
using namespace std;

int main() {
  fastio;
  int n, m, i;
  cin >> n >> m;
  vector<int> poles;
  for (i = 1; i <= n; i++) {
    int a;
    cin >> a;
    if (a - i * m > 0) {
        continue;
    }
    poles.push_back(a - i * m);
  }


  vector<int> s;
  int best_ans = 0;
  for (i = 0; i < poles.size(); i++) {
    auto it = upper_bound(s.begin(), s.end(), poles[i], greater<int>());
    if (it == s.end()) {
      s.push_back(poles[i]);
      best_ans++;
      continue;
    }
    s[it - s.begin()] = poles[i];
  }

  cout << n - best_ans << '\n';
}

Compilation message (stderr)

triusis.cpp: In function 'int main()':
triusis.cpp:22:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |   for (i = 0; i < poles.size(); 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...