Submission #481409

#TimeUsernameProblemLanguageResultExecution timeMemory
481409DAleksaPo (COCI21_po)C++17
50 / 70
1088 ms2372 KiB
#include <bits/stdc++.h> using namespace std; #define int long long using ll = long long; using ld = long double; template<typename T> using vc = vector<T>; template<typename T> using vvc = vc<vc<T>>; template<typename T> void smax(T& a, T b) {a = max(a, b);} template<typename T> void smin(T& a, T b) {a = min(a, b);} #define X first #define Y second #define pb push_back #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define read(a) for(auto& i : a) cin >> i #define print(a) for(auto& i : a) cout << i << " " int n; vc<int> a; int rez; void f(int l, int r) { if(l > r) return; int mn = INT_MAX; for(int i = l; i <= r; i++) smin(mn, a[i]); rez += (mn > 0); int lst = l; for(int i = l; i <= r; i++) { if(a[i] == mn) { f(lst, i-1); lst = i+1; } } f(lst, r); } signed main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); cin >> n; a.resize(n); read(a); f(0, n-1); cout << rez; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...