Cod sursa(job #283721)

Utilizator sigridMaria Stanciu sigrid Data 19 martie 2009 16:56:58
Problema Secventa Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<stdio.h>
#define dim 500001

int a[dim], c[dim];

int N, K;

int main()
{
    int i, prim, ultim, nn;
    
    freopen("secventa.in","r",stdin);
    freopen("secventa.out","w",stdout);
    
    scanf("%d %d", &N, &K);
    
    for(i=1; i<=N; ++i)
        scanf("%d", &a[i]);
      
    prim=ultim=1;
    c[prim]=1;
    
    i=1;
    while(i <= N)
     {
          //adaug elementul i
          while( (ultim <= prim) && (a[c[ultim]] > a[i] ) )
              --ultim;
          
          ++ultim;
          c[ultim]=i;
          
          ++i;     
     }
     
    printf("%d %d %d \n", c[ultim-K+1], c[ultim], a[c[ultim-K+1]]);
    
    return 0;
}