Pagini recente » Cod sursa (job #345604) | Cod sursa (job #2315563) | Cod sursa (job #2093361) | Cod sursa (job #2937834) | Cod sursa (job #500477)
Cod sursa(job #500477)
#include <stdio.h>
#include <set>
#include <algorithm>
using namespace std;
set<pair<int,int> > arb;
set<pair<int,int> >::iterator it1,it2,it;
int n,i,x,y;
int main()
{
freopen("sea2.in","r",stdin);
freopen("sea2.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%d",&x,&y);
it=arb.upper_bound(make_pair(x,y));
if(it!=arb.end()&&it->second>y)
{
printf("-1\n");
continue;
}
if(arb.size())
{
it1=it;
while(it1!=arb.begin())
{
it2=it1;
--it2;
if(it2->second>=y) break;
it1=it2;
}
arb.erase(it1,it);
}
arb.insert(make_pair(x,y));
printf("%d\n",arb.size());
}
return 0;
}