Submission #854067

#TimeUsernameProblemLanguageResultExecution timeMemory
854067The_SamuraiMoney (IZhO17_money)C++17
0 / 100
1 ms348 KiB
#include "bits/stdc++.h" using namespace std; using ll = long long; const int inf = 1e9; int main() { cin.tie(0)->sync_with_stdio(false); #ifdef sunnatov freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif int n; cin >> n; vector<int> a(n + 1); for (int i = 1; i <= n; i++) cin >> a[i]; vector<bool> incr(n + 1); incr[0] = true; for (int i = 1; i <= n; i++) incr[i] = incr[i - 1] & (a[i] > a[i - 1]); if (incr[n]) { cout << 1; return 0; } set<int> st; for (int i = 1; i <= n; i++) st.insert(a[i]); int cnt = 1; for (int i = n; i > 0; i--) { if (incr[i - 1]) { cout << cnt + 1; return 0; } if (a[i - 1] == a[i]) continue; if (st.upper_bound(a[i - 1]) == st.end() or *st.upper_bound(a[i - 1]) != a[i]) { cnt++; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...