Cod sursa(job #3314113)

Utilizator domdiridomdidomDominik domdiridomdidom Data 8 octombrie 2025 13:56:27
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.7 kb
#include <fstream>
#include <climits>

int main(){
    std::ifstream bem("ssm.in");
    std::ofstream kim("ssm.out");
    int maxIdxStart = 0, maxIdxEnd = 0, max = INT_MIN;
    int idxStart = 0, idxEnd = 0, szam = 0, elozo = 0;
    int n;
    bem >> n;
    bem >> elozo;
    for(int i = 1; i < n; i++){
        bem >> szam;
        if(elozo + szam >= szam){
            szam += elozo;
            idxEnd++;
        } else {
            idxStart = idxEnd = i;
        }
        if(szam > max){
            maxIdxStart = idxStart + 1;
            maxIdxEnd = idxEnd + 1;
            max = szam;
        }
        elozo = szam;
    }
    kim << max << ' ' << maxIdxStart << ' ' << maxIdxEnd;
}