Pagini recente »
Istoria paginii utilizator/mugur
|
Istoria paginii runda/nfvbvfdbvh
|
Clasament adunare
|
Istoria paginii utilizator/gabiadi
|
Cod sursă (job #390645)
Cod sursă (job
#390645)
#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;
}