Cod sursa(job #903723)

Utilizator Gaby_mMititelu Gabriel Gaby_m Data 2 martie 2013 17:55:55
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.7 kb
#include<fstream>
#include<algorithm>
const int NMAX = 6000001;
using namespace std;
int N;
int values[NMAX];
ifstream fin("ssm.in");
ofstream fout("ssm.out");
 
void solve() {  
    int start,end, auxStart;
    int sum = -int(2e9);    
    int auxSum = 0;
    fin>>N;
    int i;  
    for (i = 0; i < N; i++) {
        fin>>values[i];
        if (auxSum < 0){ 
            auxSum = values[i]; auxStart = i;
        }
        else
            auxSum += values[i];
         
        if (sum < auxSum) {
            sum = auxSum; start = auxStart; end = i;
        }
    }   
    fout<<sum<<" "<<start+1<<" "<<end+1<<"\n";  
     
}
 
int main(){ 
    solve();    
    return 0;
}