Pagini recente »
Atașamentele paginii Clasament 2022-02-17-clasa-6-concurs09-cursuri-performanta
|
Istoria paginii utilizator/miruna.zavelca
|
Diferențe pentru runda/2019-11-14-clasa-7-tema-10 între reviziile 2 și 1
|
Istoria paginii utilizator/anamaria
|
Cod sursă (job #486221)
Cod sursă (job
#486221)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("lalele.in");
ofstream out("lalele.out");
struct ura
{
int h,zi;
};
bool comp(ura x,ura y)
{
if(x.h<y.h)
return true;
else
return false;
}
ura v[5000001];
int main()
{
int n,d,x,q=0,i,l,j;
in>>n;
for(i=1;i<=n;)
{
in>>d>>x;
if(x!=0)
for(j=1;j<=d;j++,i++)
{
v[++q].h=x;
v[q].zi=i;
}
else
{
int ok=0;
if(q%2==1)
{
q++;
ok=1;
}
int k=q/2;
if(ok==1)
q--;
for(l=1;l<=q;l++)
{
v[l].h+=(i-v[l].zi+1);
}
for(j=1;j<=d;j++)
{
nth_element(v+1,v+k+1,v+q+1,comp);
out<<v[k].h<<'\n';
q=q/2;
k=q/2;
++i;
}
}
}
return 0;
}