Cod sursa(job #3325644)

Utilizator marap2011Paun Mara marap2011 Data 25 noiembrie 2025 21:36:50
Problema Secventa Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <bits/stdc++.h>
#define pii pair < int , int >
using namespace std;
ifstream fin ("secventa.in") ;
ofstream fout ("secventa.out") ;
long long n , k , i , mx , l , o , v[500005] , s , f , x ;
priority_queue < pii , vector < pii > , greater < pii > > pq ;
int main ()
{
    fin >> n >> k ;
    for ( i = 1 ; i <= n ; i ++ )
    {
        fin >> v[i] ;
    }
    for ( i = 1 ; i < k ; i ++ )
        pq.push ( make_pair ( v[i] , i ) ) ;
    for ( i = k ; i <= n ; i ++ )
    {
        pq.push ( make_pair ( v[i] , i ) ) ;
        while ( ! pq.empty() && pq.top().second <= i - k )
            pq.pop() ;
        if ( ! pq.empty() )
        {
            x = pq.top().first ;
       // cout << x << " " ;
            if ( x > mx )
            {
                mx = x ;
                f = i ;
                s = i - k + 1 ;
            }
        }
    }
    fout << s << " " << f << " " << mx ;

    return 0 ;
}