Submission #839396

#TimeUsernameProblemLanguageResultExecution timeMemory
839396Darren0724Money (IZhO17_money)C++17
100 / 100
912 ms61808 KiB
#include <bits/stdc++.h> using namespace std; #define int long long const int INF = 1e9; set<int> s; int bet(int a, int b) { auto it = s.upper_bound(a); return (it != s.end() && *it < b); } int32_t main() { int n; cin >> n; vector<int> v(n); for (int i = 0; i < n; i++) { cin >> v[i]; } int ans = 0; int j = 0; int mx = -INF, mn = INF; for (int i = 0; i < n; i++) { if (mx > v[i] || bet(mn, v[i])) { ans++; while (j <= i) { s.insert(v[j]); j++; } mn = INF; mx = -INF; } mx = max(mx, v[i]); mn = min(mn, v[i]); } ans++; cout << ans << endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...