Pagini recente » Borderou de evaluare (job #350572) | Cod sursa (job #360404) | Cod sursa (job #427647) | Cod sursa (job #3133166) | Cod sursa (job #427655)
Cod sursa(job #427655)
#include <iostream>
#include <cstring>
#include <cstdio>
#include <algorithm>
using namespace std;
void open(){
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
}
const int oo=(int)2e9;
int n,x,ans,sum,b1,b2,id2;
void get_int(int &zz){
char c;
bool sign=1;
zz=0;
while (c=getchar()){
if (c>='0' && c<='9'){
zz=c-'0';break;
}
else if (c=='-'){
sign=0;
break;
}
}
while (c=getchar()){
if (c>='0' && c<='9'){
zz=(zz<<1)+(zz<<3)+(c-'0');
}
else break;
}
if (!sign) zz*=-1;
}
int main(){
open();
get_int(n);
ans=-oo;sum=0;
for (int i=1;i<=n;i++){
get_int(x);
if (sum<0){
sum=x;id2=i;
}
else {
sum+=x;
}
if (ans<sum){
ans=sum;
b1=id2;b2=i;
}
}
printf("%d %d %d\n",ans,b1,b2);
//system("pause");
return 0;
}