Submission #647949

#TimeUsernameProblemLanguageResultExecution timeMemory
647949huyleRabbit Carrot (LMIO19_triusis)C++17
100 / 100
35 ms6832 KiB
#include <bits/stdc++.h> using i64 = long long; #ifdef DEBUG #include "debug.h" #else #define debug(...) 69 #endif int32_t main() { std::cin.tie(0)->sync_with_stdio(0); std::cin.exceptions(std::cin.failbit); int n, m; std::cin >> n >> m; std::vector<i64> a, lis; for (int i = 0; i < n; ++i) { i64 tmp; std::cin >> tmp; tmp = 1LL * m * (i + 1) - tmp; if (tmp >= 0) a.push_back(tmp); } for (int i = 0; i < (int)a.size(); ++i) { auto pos = std::upper_bound(lis.begin(), lis.end(), a[i]) - lis.begin(); if (pos == lis.size()) lis.push_back(a[i]); else lis[pos] = a[i]; } std::cout << n - lis.size() << "\n"; }

Compilation message (stderr)

triusis.cpp: In function 'int32_t main()':
triusis.cpp:23:13: warning: comparison of integer expressions of different signedness: 'long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   23 |     if (pos == lis.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...