Pagini recente » Cod sursa (job #1501123) | Cod sursa (job #2941799) | Cod sursa (job #2822856) | Cod sursa (job #1927825) | Cod sursa (job #2314628)
#include <iostream>
#include <fstream>
#include <climits>
#include <algorithm>
#include <cmath>
const int MININF = INT_MIN;
int main(){
std::ifstream in("ssm.in");
std::ofstream out("ssm.out");
int N;
in >> N;
long long int maxSubseqSum = INT_MIN;
long long int prev;
in >> prev;
long long int currSum = 0;
int maxp = 1;
int maxq = 1;
int currp = 1;
int currq = 1;
for(int i = 2; i <= N; ++i){
long long int val;
in >> val;
if(val > val + prev){
currp = i;
currq = i;
currSum = val;
}
else{
currSum = val + prev;
++currq;
}
if(currSum > maxSubseqSum){
maxp = currp;
maxq = currq;
maxSubseqSum = currSum;
}
prev = currSum;
}
out << maxSubseqSum << ' ' << maxp << ' ' << maxq;
return 0;
}