Cod sursa(job #3313799)

Utilizator Mihai09Mihai Arteni Mihai09 Data 6 octombrie 2025 18:29:04
Problema Subsecventa de suma maxima Scor 95
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>

using namespace std;

ifstream fin("ssm.in");
ofstream fout("ssm.out");

int ans,x,n,dp[6000010],pozi[6000010];

int main()
{
    fin >>n;
    for(int i = 1;i <= n;i++)
    {
        fin >>x;
        if(x > dp[i-1]+x)
        {
            pozi[i] = i;
            dp[i] = x;
        }
        else
        {
            pozi[i] = pozi[i-1];
            dp[i] = dp[i-1]+x;
        }
        ans = max(ans,dp[i]);
    }
    for(int i = 1;i <= n;i++)
    {
        if(dp[i] == ans)
        {
            fout <<ans<<" "<<pozi[i]<<" "<<i;
        } 
    }
    return 0;
}