Cod sursa(job #2274656)

Utilizator ParketPatrick Josephs Parket Data 2 noiembrie 2018 11:36:42
Problema Secventa Scor 10
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.8 kb
#include <stdio.h>
#include <stdlib.h>
#define N 500000
#define MAX_VALUE 30001
int v[N+1];
int MIN(int a, int b){if(a>b)return b;else return a;}
int main()
{
    FILE *f1, *f2;
    f1=fopen("secventa.in","r");
    f2=fopen("secventa.out","w");

    int n, i, j, k, st, dr, min, max;
    fscanf(f1,"%d%d",&n,&k);

    for(i=1;i<=n;i++)
        fscanf(f1,"%d",&v[i]);

    min=MAX_VALUE;
    max=MAX_VALUE*-1;
    i=1;

    while(i+k-1<=n){
        j=i;
        min=MAX_VALUE;
        while(j<=n){
            min=MIN(min,v[j]);
            if(min>max && j-i+1>=k){
                max=min;
                st=i;
                dr=j;
            }
            j++;
        }
        i++;
    }
    fprintf(f2,"%d %d %d",st,dr,max);
    fclose(f1);
    fclose(f2);
    return 0;
}