Submission #731326

#TimeUsernameProblemLanguageResultExecution timeMemory
731326dubabubaRabbit Carrot (LMIO19_triusis)C++14
0 / 100
1 ms324 KiB
#include <bits/stdc++.h> using namespace std; typedef pair<int, int> pii; #define ff first #define ss second #define MP make_pair const int mxn = 2e5 + 10; int a[mxn], n, m; int b[mxn]; int c[mxn]; vector<pii> v; int LIS() { sort(v.begin(), v.end()); vector<int> dp; for(pii p : v) { int id = lower_bound(dp.begin(), dp.end(), p.ss) - dp.begin(); if(id == dp.size()) dp.push_back(p.ss); else dp[id] = p.ss; } return dp.size(); } int main() { cin >> n >> m; for(int i = 1; i <= n; i++) { cin >> a[i]; b[i] = m * i - a[i]; c[i] = m * i + a[i]; if(b[i] >= 0) v.push_back(MP(b[i], c[i])); } cout << n - LIS(); return 0; }

Compilation message (stderr)

triusis.cpp: In function 'int LIS()':
triusis.cpp:20:9: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   20 |   if(id == dp.size()) dp.push_back(p.ss);
      |      ~~~^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...