Cod sursă (job #390645)

Utilizator avatar rares404 AlShaytan - Balasescu Rares rares404 IP ascuns
Problemă Lalele (clasele 9-10) Compilator cpp | 0,93 kb
Rundă Arhiva de probleme Status evaluat
Dată 24 sept. 2018 17:01:04 Scor 100
#include <fstream>
#include <algorithm>

using namespace std;

#define NMAX 5000005

int v[NMAX], pre[NMAX];

int main() {
    freopen("lalele.in","r",stdin) ;
    freopen("lalele.out","w",stdout) ;
    int n, k(0), p(0), x, d, i(1), j;
    scanf("%d", &n) ;
    for(i ; i <= n ;) {
        scanf("%d %d", &d, &x) ;
        if (x == 0) {
            for (j = 1 ; j <= k ; ++ j) {
                v[j] += p - pre[j] ;
                pre[j] = p ;
            }
            for (j = 1 ; j <= d ; ++ j) {
                ++ p ;
                nth_element(v + 1, v + k / 2 + 1, v + k + 1);
                k /= 2 ;
                printf("%d\n", v[k + 1] + p - pre[j]) ;
            }
            i += d ;
            continue ;
        }
        for (j = 1 ; j <= d ; ++ j) {
            ++ k ;
            v[k] = x ;
            ++ p ;
            pre[k] = p ;
        }
        i += d ;
    }
    return 0;
}