Cod sursa(job #3197271)

Utilizator BrrtyuuBirsasteanu Rebeca Brrtyuu Data 26 ianuarie 2024 13:04:17
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.94 kb
#include <fstream>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int n, st , dr, Smax = -2000000000 , S = -1, start,A[6000001],i;
int main()
{


    in>>n;
    for(i=1; i<=n; i++)
        in>>A[i];

for(int i = 1 ; i <= n ; ++ i)
{
    if(S < 0)
        S = 0, start = i;
    S += A[i];
    if(S > Smax)
        Smax = S, st = start, dr = i;
}
out << Smax << ' ';
out << st << ' ' << dr;

    /*
    int n,st=1,dr=1,smax=0,s=0,stpoz,drpoz,i;
    int v[60001];
    in>>n;
    for(i=1; i<=n; i++)
        in>>v[i];
    while(st<n)
    {
        s=0;
        dr=st;
        while(dr<=n)
        {
            s+=v[dr];
            dr++;

        if(s>=smax)
        {
            smax=s;
            stpoz=st;
            drpoz=dr;
        }
        }
        s-=v[st];
        st++;
    }
    out<<smax<<' '<<stpoz<<' '<<drpoz-1;
*/
    in.close();
    out.close();
    return 0;
}