Cod sursa(job #2710669)

Utilizator Turcanu_DavidTurcanu David Turcanu_David Data 22 februarie 2021 20:37:39
Problema Subsecventa de suma maxima Scor 5
Compilator cpp-64 Status done
Runda david_oji_yay Marime 0.96 kb
#include <fstream>

using namespace std;

int v[6000005];

int main()
{
    ifstream cin("ssm.in");
    ofstream cout("ssm.out");
    int n, sum=0, msum=0, a, b; /// a este i, b este j
    cin>>n;
    for(int i=0; i<n; i++)
    {
        cin>>v[i];
    }



    for(int i=0; i<n; i++)
    {
        for(int j=n; j>i; j--)
        {
            for(int k=i; k<=j; k++)
            {
                sum+=v[k];
            }
            if(sum>msum)
            {
                msum=sum;
                a=i+1;
                b=j+1;
            }
            else if(sum==msum)
            {
                if(v[i]<v[a-1])
                {
                    a=i+1;
                    b=j+1;
                }
                else if(j-i<b-a)
                {
                    a=i+1;
                    b=j+1;
                }
            }
            sum=0;
        }
    }
    cout<<msum<<" "<<a<<" "<<b;
    return 0;
}