Pagini recente » PreOJI 2016 - Clasament - Clasa a 10-a | Cod sursa (job #2713522) | Cod sursa (job #2756287) | Cod sursa (job #748314) | Cod sursa (job #2540583)
#include <vector>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("operatii.in");
ofstream cout("operatii.out");
int n, arr[1000001];
unsigned long long int result = 0;
int main() {
cin>>n;
for(int x = 0; x<n; x++) {
cin>>arr[x];
}
arr[n++] = 0;
vector<int> intervals = {0};
for(int x = 0;x<n;x++){
if(arr[x] > intervals.back()){
result += arr[x] - intervals.back();
intervals.push_back(arr[x]);
}else{
while(arr[x] < intervals.back())
intervals.pop_back();
intervals.push_back(arr[x]);
}
}
cout<<result<<'\n';
return 0;
}