码迷,mamicode.com
首页 > 其他好文 > 详细

HDU 4268

时间:2014-07-11 10:42:58      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   os   art   

http://acm.hdu.edu.cn/showproblem.php?pid=4268

学会了multiset的用法,与set不同的是这个可以插入相同元素

对w排序,对合适的w用multiset插入对应的h,logn完成查找

bubuko.com,布布扣
#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#include <cmath>
#include <set>
using namespace std ;
struct node 
{
    int w,h ; 
}a[100005],b[100005] ;
int cmp(node x,node y)
{
    if(x.w==y.w)return x.h<y.h ;
    return x.w<y.w ;
}
int main()
{
    int t ;
    scanf("%d",&t) ;
    while(t--)
    {
        int n ;
        scanf("%d",&n) ;   
        for(int i=0 ;i<n ;i++)
            scanf("%d%d",&a[i].w,&a[i].h) ;
        for(int i=0 ;i<n ;i++)
            scanf("%d%d",&b[i].w,&b[i].h) ;
        sort(a,a+n,cmp) ;
        sort(b,b+n,cmp) ;
        int ans=0 ;
        multiset <int> s ;
        int j=0 ;
        for(int i=0 ;i<n ;i++)
        {
            while(j<n && b[j].w<=a[i].w)
            {
                s.insert(b[j].h) ;
                j++ ;
            }
            if(!s.size())continue ;
            multiset <int> :: iterator it=s.upper_bound(a[i].h) ;
            if(it!=s.begin())
            {
                it-- ;
                s.erase(it) ;
                ans++ ;
            }
        }
        printf("%d\n",ans) ;
    }
    return 0 ;
}
View Code

 

HDU 4268,布布扣,bubuko.com

HDU 4268

标签:style   blog   http   color   os   art   

原文地址:http://www.cnblogs.com/xiaohongmao/p/3834181.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!