Cod sursa(job #2356305)

Utilizator lupandreiLup Andrei lupandrei Data 26 februarie 2019 16:49:50
Problema Subsecventa de suma maxima Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.69 kb
#include <fstream>

using namespace std;
ifstream in("ssm.in");
ofstream out ("ssm.out");
int v[6000001], n;
void citire(int &n)
{
    int nr;
    in>>n;
    in>>v[1];
    for(int i=2;i<=n;i++)
    {
        in>>nr;
        v[i]=v[i-1]+nr;
    }
}
void maxim(int n,int &maxi, int &pi,int &psf)
{
    long long s;
    pi=0;
    psf=0;
    maxi=-2147483647;
    for(int i=1;i<=n;i++)
    for(int j=i;j<=n;j++)
    {
        s=v[j]-v[i-1];
        if(s>maxi)
        {
            maxi=s;
            pi=i;
            psf=j;
        }
    }
}
int main()
{
    int maxi,pi,psf;
    citire(n);
    maxim(n,maxi,pi,psf);
    out<<maxi<<" "<<pi<<" "<<psf;
    return 0;
}