Pagini recente » Cod sursa (job #1388172) | Cod sursa (job #772484) | Cod sursa (job #2274919) | Cod sursa (job #2989875) | Cod sursa (job #1067705)
#include<fstream>
const unsigned maxn = 6000000;
using namespace std;
signed a[maxn],n,b[maxn],f,m;
int min1,max1;
main(){
ifstream fin("ssm.in");
ofstream fout("ssm.out");
fin>>n;
a[0]=0;
int x;
for(int i=1;i<=n;i++){
fin>>x;
a[i]=a[i-1]+x;
}
min1 = 0;
max1 = 1;
f = -maxn;
m=0;
for(int i=1;i<=n;i++){
b[i]=a[i]-m;
if(a[i]<m){
min1=i;
m=a[i];
}
if(f<b[i]){
max1=i;f=b[i];
}
}
int i=max1
signed s=0;
while(s!=f){
s+=a[i]-a[i-1];
i--;
}
fout<<f<<" "<<i+1<<" "<<max1;
fin.close(); fout.close();
}