Pagini recente » Cod sursa (job #2842503) | Arhiva de probleme | Cod sursa (job #2227891) | Cod sursa (job #918883) | Cod sursa (job #274097)
Cod sursa(job #274097)
#include <fstream>
#include <iostream>
using namespace std;
int n;
int s[6000001];
#define FOR(i,b,c) for (int i = (b); i<(c); i++)
#define abs(a) ((a<0)?(-1*a):(a))
void mainLoop(){
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin >> n;
FOR(i,0,n)
fin >> s[i];
int min = 0, a=0, b=0;
long sum = 0, minS = (2e9), rez = s[0];
FOR(i,0,n){
if (sum + s[i] < minS)
min = i, minS = sum + s[i];
sum += s[i];
if (sum - minS > rez){
rez = sum - minS;
a = min;
b = i;
}
}
cout << rez << " " << a+2 << " " << b+1;
fout.close(), fin.close();
}
int main() {
mainLoop();
return 0;
}