Cod sursa(job #1041989)
Utilizator | FMI Stanescu Leonard Wyvern | Data | 26 noiembrie 2013 13:52:01 |
---|---|---|---|
Problema | Heapuri | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.74 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fi("heapuri.in");
ofstream fo("heapuri.out");
int v[200002],n;
int main()
{
fi>>n;
int nr=0;
for (int i=1;i<=n;i++) {
fi>>x;
if (x==3)
fo<<v[1];
else
if (x==1) {
fi>>y;
nr++;
if (v[nr/2]<=y)
v[nr]=y;
else {
int j=nr;
while (v[j/2]>y) {
v[j]=v[j/2];
v[j/2]=y;
j=j/2;
}
}
}
else {
fi>>y;
}
}
return 0;
}