Cod sursa(job #3139158)

Utilizator KRISTY06Mateiu Ianis Cristian Vasile KRISTY06 Data 25 iunie 2023 18:13:49
Problema Subsecventa de suma maxima Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.85 kb
#include <iostream>
#include <fstream>
using namespace std;

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

const int MAX_LENGTH = 100;
const int MAX_VALUE = 2000000;

int main() {
    int numLen;
    fin >> numLen;
    int num[MAX_LENGTH + 1];
    for (int i = 1; i <= numLen; ++i) {
        fin >> num[i];
    }
    int maxSum = -MAX_VALUE - 1, start = 0, end = 0;
    for (int i = 1; i <= numLen; ++i) {
        int sum = 0;
        for (int j = i; j <= numLen; ++j) {
            sum += num[j];
            if (sum > maxSum) {
                maxSum = sum;
                start = i;
                end = j;
            }
        }
    }
    fout << maxSum << ' ' << start << ' ' << end;
    return 0;
}
/*
 7
 5 -6 3 4 -2 3 -3
 =>
 8 3 6
 
 2
 3 1
 =>
 4 1 2
 
 5
 3 1 -3 -1 4
 =>
 4 1 2
 
 1
 3
 =>
 3 1 1
 
 3
 -2 -1 -3
 =>
 -1 2 2
 
 3
 -1 -1 -1
 =>
 -1 1 1
 */