Cod sursa(job #928537)

Utilizator Mr.DoomRaul Ignatus Mr.Doom Data 26 martie 2013 14:59:39
Problema Secventa Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <cstdio>
using namespace std;

FILE * is = fopen("secventa.in", "r");
FILE * os = fopen("secventa.out", "w");

int n, k;
int dr;
int bmin = 30001 , bmax = -30001;
int stm, drm;
int a[500001];


int main()
{
    fscanf(is,"%d%d", &n, &k);
    for ( int i = 1; i <= n; ++i )
      fscanf(is, "%d", &a[i]);
    for ( int st = 1; st <= n - k + 1; ++st )
    {
      dr = st;
      bmin = 30001;
      while(dr < st + k)
      {
         if ( a[dr] <= bmin )
            bmin = a[dr];
         if ( dr == st + k - 1 )
            if ( bmin > bmax )
            {
               bmax = bmin;
               stm = st;
               drm = dr;
            }
         dr++;
      }
    }
    fprintf(os, "%d %d %d", stm, drm, bmax);


    fclose(is);
    fclose(os);
    return 0;
}