Cod sursa(job #2972192)

Utilizator stef0n2005Andon Stefan stef0n2005 Data 28 ianuarie 2023 20:03:57
Problema Subsecventa de suma maxima Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.65 kb
#include "bits/stdc++.h"
using namespace std;
int a[6000005];
int len;
ifstream in;
ofstream out;
int first=0, last=0, sum = 0;
int getSum(int f, int b){
int s = 0;
    for(int i = f; i<=b; i++) s+=a[i];
    return s;

}
void bck(int n){
if(n<len){
    for(int i = len-1; i>=n; i--){
            if(getSum(n, i)>sum){
                sum = getSum(n, i);
                first = n;
                last = i;
            }
        }
        bck(n+1);
    }
}

int main(){
    in.open("ssm.in");
    out.open("ssm.out");
    in>>len;
    for(int i = 0; i<len; i++){
        in>>a[i];
    }
    sum = a[0]+a[1];
    bck(0);
    out<<sum<<" "<<first+1<<" "<<last+1;
}