题解:
对Alice和Bob的数据一起排序,再贪Alice离Bob最进的矩形
做了整整一个下午,我晚饭后找了一会,还是没发现,
一筹莫展之际,只有使出杀手锏(求教飞机哥!!!)
正在注释代码准备求助时,终于的发现了坑货的小bug!!!!
( bool cmp()中忘写了return false;以前使用int cmp())
1。起初是直接查找TLE,各种换数据结构。
2。数组开100005提交,Runtime Error
(ACCESS_VIOLATION)又百度,此错误好像有爆内存的原因(明明就够题目数据量的??)。
3。最后还得请教baidu先生,找到
- iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。
- iterator upper_bound( const key_type &key ):返回一个迭代器,指向键值> key的第一个元素。
#include
#include - #include
#include #include #include using namespace std;struct node{ int w,h,flag;//0 B;1 A;}a[200005];//list s;//list ::iterator it;set s;set ::iterator it;bool cmp(node b,node c){ if(b.w c.w)return false; else if(b.h it--;//删除前一个,最近的覆盖//x++; s.erase(it); } //printf("%d %d\n",i,s.size()); } printf("%d\n",n-s.size()); } return 0;}
-
#include
#include - #include
#include #include #include #include using namespace std;struct node{ int w,h,flag;//0 B;1 A;}p;vector a;set s;set ::iterator it;bool cmp(node b,node c){ if(b.w c.w)return false; else if(b.h