Pagini recente » Diferente pentru template/newround intre reviziile 26 si 22 | Diferente pentru template/girls-programming-camp-2011/header intre reviziile 10 si 2 | Diferente pentru template/newround intre reviziile 23 si 22 | Diferente pentru template/newround intre reviziile 10 si 9 | Cod sursa (job #1651131)
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
const int nmax=6e6, inf=(1<<31)-1;
int s[nmax+1];
int main () {
int n;
fin>>n;
for (int i=1; i<=n; i++) {
fin>>s[i];
s[i]+=s[i-1];
}
int sol=-inf, solx, soly, aux=inf, auxp;
for (int i=1; i<=n; i++) {
if (s[i-1]<aux) {
aux=s[i-1];
auxp=i;
}
if (s[i]-aux>sol) {
sol=s[i]-aux;
solx=auxp;
soly=i;
}
}
fout<<sol<<" "<<solx<<" "<<soly<<"\n";
return 0;
}