Cod sursa(job #3315059)

Utilizator filipdanieloanFilip-Daniel Oancea filipdanieloan Data 12 octombrie 2025 10:25:37
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.6 kb
#include <bits/stdc++.h>
using namespace std;

int main()
{
    ifstream cin("ssm.in");
    ofstream cout("ssm.out");
    
    int N;
    cin >> N;
    
    vector<int> sp(N + 1, 0);
    for(int i = 1; i <= N; ++i) {
        cin >> sp[i];
        sp[i] += sp[i-1];
    }
    
    int ssm = INT_MIN, minn = INT_MAX, st, dr;
    for(int i = 1; i <= N; ++i) {
        if(minn > sp[i-1]) {
            minn = sp[i-1];
            st = i; 
        }
        if(ssm < sp[i] - minn) {
            ssm = sp[i] - minn;
            dr = i;
        }
    }
    
    cout << ssm << ' ' << st << ' ' << dr;

    return 0;
}