Cod sursa(job #2284457)

Utilizator GeoDinBacauTofan George GeoDinBacau Data 17 noiembrie 2018 11:05:31
Problema Subsecventa de suma maxima Scor 80
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.61 kb
#include <iostream>
#include <fstream>
using namespace std;
int dp[6000001],start[6000001];
int main()
{
    ifstream fcin("ssm.in");
    ofstream fcout("ssm.out");
    int i,x;
    long long n;
    fcin>>n;
    fcin>>x;
    dp[1]=x;
    start[1]=1;
    int maxi=1;
    for(i=2;i<=n;i++){
        fcin>>x;
        if(dp[i-1]>0){
            dp[i]=dp[i-1]+x;
            start[i]=start[i-1];
        }
        else{
            dp[i]=x;
            start[i]=i;
        }
        if(dp[i]>dp[maxi])
            maxi=i;
    }
    fcout<<dp[maxi]<<" "<<start[i-1]<<" "<<maxi;

    return 0;
}