Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- ifstream f ("xspe.in");
- ofstream g ("xspe.out");
- int n;
- int a[1000005] , ans[10000005];
- stack < int > s;
- int main()
- {
- int i;
- f >> n;
- for(i = 1 ; i <= n ; i++)
- f >> a[i];
- for(i = n ; i >= 1 ; i--)
- {
- while(s.empty() == false && a[s.top()] >= a[i])
- s.pop();
- if(s.empty() == true)
- ans[i] = a[i];
- else ans[i] = a[s.top()] + a[i];
- s.push(i);
- }
- for(i = 1 ; i <= n ; i++)
- g << ans[i] << ' ';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement