Pagini recente » Monitorul de evaluare | Cod sursa (job #1656945) | Cod sursa (job #1680003) | Cod sursa (job #419734) | Cod sursa (job #2231569)
#include <iostream>
#include <fstream>
using namespace std;
const int oo= -( 1 << 30 );
const long long MAX1= 6000000;
ifstream f("ssm.in");
ofstream g("ssm.out");
int main ()
{
int n,sum[MAX1],v[MAX1],best[MAX1],bestmin,minim,a,b;
sum[0]=0;
f>>n;
for(int i=1;i<=n;i++){
f>>v[i];
sum[i]=v[i]+sum[i-1];}
bestmin=oo;
minim=sum[0];
for(int i=1;i<=n;i++){
best[i]=sum[i]-minim;
if(minim>sum[i]) {minim=sum[i];a=i+1;}
if(best[i]>bestmin) {bestmin=best[i];b=i;}}
cout<<bestmin<<" "<<a<<" "<<b;
}