Pagini recente »
runda_pregatire
|
Istoria paginii utilizator/adela.stoe
|
infoabc_incepatori
|
lasm_22_02_2024_clasa12
|
Cod sursă (job #95656)
Cod sursă (job
#95656)
#include <stdio.h>
#include <algorithm>
using namespace std;
struct flori
{
int h,z;
} v[5000001];
bool cmp(flori a,flori b)
{
return a.h<b.h;
}
int main()
{
FILE *fin,*fout;
fin=fopen("lalele.in","r");
fout=fopen("lalele.out","w");
int i,n,sum=0,nr=0,zi=0;
fscanf(fin,"%d",&n);
while(sum < n)
{
int a,b;
fscanf(fin,"%d%d",&a,&b);
if( b != 0)
{
for(i=1; i<=a; i++)
{
v[++nr].h=b;
v[nr].z=++zi;
}
}
else
{
int j=a;
while(j>0)
{
zi++;
for(i=1; i<=nr; i++)
{
v[i].h+=zi-v[i].z;
v[i].z=zi;
}
nth_element(v+1,v+nr/2+1,v+nr+1,cmp);
fprintf(fout,"%d\n",v[nr/2+1]);
nr/=2;
j--;
}
}
sum+=a;
}
return 0;
}