Cod sursa(job #469712)

Utilizator miculprogramatorA Cosmina - vechi miculprogramator Data 8 iulie 2010 17:36:58
Problema Secventa 2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <stdio.h>
#include <vector>
using namespace std;

int a[50001];
int v[50001];
int n, i, j, k, K;
int Max = - 10000000, p1, p2;

int main ()
{
    FILE *f = fopen ("secv2.in","r");
    FILE *g = fopen ("secv2.out","w");
    fscanf (f,"%d %d", &n, &K);
    for (i=1; i<=n; ++i)
        fscanf (f,"%d", &v[i]);

    for (i=1; i<=n; ++i)
    {
        k = i;
        for (j=1; j<=n-i+1; ++j)
        {
            a[j] = a[j-1] + v[k];
            if (j >= K)
            {
                if (Max < a[j])
                {
                    Max = a[j];
                    p1 = i;
                    p2 = i + j - 1;
                }
            }
            k ++;
        }
        for (j=1; j<=n-i+1; ++j)
            a[j] = 0;
    }

    /*for (i=1; i<=n; ++i)
    {
        for (j=1; j<=n-i+1; ++j)
            printf ("%d ", a[i][j]);
        printf ("\n");
    }

    printf ("Max = %d\np1 = %d\np2 = %d\n", Max, p1, p2);*/

    fprintf (g,"%d %d %d", p1, p2, Max);

    fclose(g);
    fclose(f);
    return 0;
}