Pagini recente » Diferente pentru preoni-2007/runda-finala/poze/wii-play intre reviziile 2 si 3 | Cod sursa (job #3120640) | Diferente pentru calibrare-limite-de-timp intre reviziile 205 si 206 | Diferente pentru calibrare-limite-de-timp intre reviziile 85 si 221 | Cod sursa (job #412866)
Cod sursa(job #412866)
#include <stdio.h>
#include <stdlib.h>
#include <fstream>
using namespace std;
int main(){
int n,*v,i;
ifstream in("ssm.in");
ofstream out("ssm.out");
in>>n;
v=(int*)malloc (n*sizeof(int));
for (i=0;i<n;i++)
in>>v[i];
int smax,sum,start=1,stop=1,m=0;
smax=sum=v[0];
for (i = 1;i < n; ++i){
if (sum < 0){
sum = v[i];
m=i;
}
else{
sum += v[i];
}
if (sum > smax) {
smax = sum;
stop = i+1;
start = m;
}
}
out<<smax<<" "<<start<<" "<<stop;
in.close();
out.close();
free(v);
return 0;
}