Cod sursa(job #2154641)

Utilizator Justice88Tirisi Claudiu Justice88 Data 7 martie 2018 09:50:02
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.48 kb
#include<fstream>
#include<limits.h>
using namespace std;
ifstream f("ssm.in");
ofstream o("ssm.out");
int n, a[60000001], maxx, maxc, start, endd, s=0;
void citire(){
f>>n;
for(int i=0;i<n;i++){
f>>a[i];
}
}
void kadane(){
maxx=INT_MIN;
maxc=0;
for(int i=1;i<n;i++){
maxc+=a[i];
if(maxx<maxc){
maxx=maxc;
start=s;
endd=i;
}
if(maxc<0){
maxc=0;
s=i+1;
}
}
}
void afisare(){
o<<maxx<<" "<<++start<<" "<<++endd;
}
int main(){
citire();
kadane();
afisare();
}