제출 #344392

#제출 시각아이디문제언어결과실행 시간메모리
344392apostoldaniel854Money (IZhO17_money)C++14
100 / 100
1353 ms52844 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define pb push_back #define dbg(x) cerr << #x << " " << x << "\n" const int MAX_N = 1e6; int bank[1 + MAX_N]; int main () { ios::sync_with_stdio (false); cin.tie (0); cout.tie (0); int n; cin >> n; for (int i = 1; i <= n; i++) cin >> bank[i]; multiset <int> segments; int i = 2, seg = 1; int biggest = MAX_N * 2; segments.insert (bank[1]); while (i <= n) { while (i <= n && bank[i - 1] <= bank[i] && bank[i] <= biggest) { segments.insert (bank[i]); i++; } if (i <= n) { seg++; segments.insert (bank[i]); if (segments.upper_bound (bank[i]) != segments.end ()) biggest = *segments.upper_bound (bank[i]); else biggest = MAX_N * 2; } i++; } cout << seg << "\n"; return 0; } /** 6 3 6 4 5 1 2 **/
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...