Cod sursa(job #3210775)

Utilizator Coman_DianaComan Diana Coman_Diana Data 7 martie 2024 13:04:00
Problema Subsecventa de suma maxima Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.74 kb
#include <stdio.h>
#include <stdlib.h>

#define NMAX 6000000

int main()
{
    FILE *fin, *fout;

    int num_n, ind, sum, summx, pi, p1, p2, num;

    fin = fopen( "ssm.in", "r" );
    fscanf( fin, "%d", &num_n );

    summx = -1 * NMAX;
    sum = 0;
    pi = 1;
    p1 = p2 = 0;
    for ( ind = 1; ind <= num_n; ind++ ) {
        fscanf( fin, "%d", &num );
        if ( sum < 0 ) {
            sum = 0;
            pi = ind;
        }
        sum = sum + num;
        if ( sum > summx ) {
            summx = sum;
            p1 = pi;
            p2 = ind;
        }
    }
    fclose( fin );

    fout = fopen( "ssm.out", "w" );
    fprintf( fout, "%d %d %d\n", summx, p1, p2 );
    fclose( fout );
    return 0;
}