제출 #880783

#제출 시각아이디문제언어결과실행 시간메모리
880783votranngocvyRabbit Carrot (LMIO19_triusis)C++14
100 / 100
47 ms5200 KiB
#include <bits/stdc++.h> using namespace std; #define pii pair<int,int> #define fi first #define se second #define mp make_pair const int N = 2e5 + 5; vector<int>a; int bit[N]; void compress() { vector<pii>vec; for (int i = 0; i < a.size(); i++) vec.push_back(mp(a[i],i)); sort(vec.begin(),vec.end()); a[vec[0].se] = 1; for (int i = 1; i < vec.size(); i++) if (vec[i].fi == vec[i - 1].fi) a[vec[i].se] = a[vec[i - 1].se]; else a[vec[i].se] = i + 1; } void update(int i,int x) { for (; i < N; i += i & (-i)) bit[i] = max(bit[i],x); } int get(int i) { int ans = 0; for (; i > 0; i -= i & (-i)) ans = max(ans,bit[i]); return ans; } signed main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n,m; cin >> n >> m; for (int i = 1; i <= n; i++) { int x; cin >> x; if (m * i - x >= 0) a.push_back(m * i - x); } int ans = 0; if (a.size()) { compress(); for (int i = 0; i < a.size(); i++) { int tmp = get(a[i]) + 1; ans = max(ans,tmp); update(a[i],tmp); } } cout << n - ans << "\n"; }

컴파일 시 표준 에러 (stderr) 메시지

triusis.cpp: In function 'void compress()':
triusis.cpp:14:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |     for (int i = 0; i < a.size(); i++) vec.push_back(mp(a[i],i));
      |                     ~~^~~~~~~~~~
triusis.cpp:17:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   17 |     for (int i = 1; i < vec.size(); i++)
      |                     ~~^~~~~~~~~~~~
triusis.cpp: In function 'int main()':
triusis.cpp:45:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   45 |         for (int i = 0; i < a.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...