fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define int long long
  4. #define endl '\n'
  5. #define __Hormer_Nguyen__ signed main()
  6. #define file(name) if (fopen(name".inp", "r")) { freopen(name".inp", "r", stdin); freopen(name".out", "w", stdout); }
  7. const int MOD=1000000007;
  8. const int maxn=5+1e5;
  9. int n,cnt;
  10. int a[maxn];
  11. int s[2*maxn];
  12. deque<int>dq;
  13. vector<int>minn;
  14. __Hormer_Nguyen__
  15. {
  16. ios::sync_with_stdio(false);
  17. cin.tie(0);
  18. cin>>n;
  19. for (int i=1;i<=n;i++) cin>>a[i];
  20. for (int i=1;i<=2*n;i++) s[i]=s[i-1]+a[(i>n?i-n:i)];
  21. for (int i=1;i<=n*2;i++)
  22. {
  23. while (dq.size() && s[dq.back()]>=s[i]) dq.pop_back();
  24. dq.push_back(i);
  25. if (dq.front()<=i-n) dq.pop_front();
  26. if (i>=n) minn.push_back(dq.front());
  27. }
  28. for (int i=1;i<=n;i++)
  29. {
  30. if (s[i-1]<s[minn[i-1]]) cnt++;
  31. }cout<<cnt;
  32. }
  33.  
Success #stdin #stdout 0s 5316KB
stdin
Standard input is empty
stdout
Standard output is empty