UVA 11020 - Efficient Solutions

题目链接

题意:每个人有两个属性值(x, y)。对于每个人(x,y)而言,当有还有一个人(x', y'),假设他们的属性值满足x' < x, y' <= y或x' <= x, y' < y的话,这个人会失去优势,每次加入一个人,并输出当前优势人个数

思路:因为每一个人失去优势后,不可能再得到优势,所以失去优势就能够当成删去这些点,这种话。就能够用一个multiset来维护点集。每次增加一个点,利用lowerbound。upper_bound二分查找旁边点的位置来进行推断和删点

代码:

#include <cstdio>
#include <cstring>
#include <iostream>
#include <set>
using namespace std;int t, n;
struct Point {int x, y;bool operator < (const Point &c) const {if (x == c.x) return y < c.y;return x < c.x;}
};multiset<Point> s;
multiset<Point>::iterator it;int main() {int cas = 0;cin >> t;while (t--) {s.clear();cin >> n;Point u;cout << "Case #" << ++cas << ":" << endl;while (n--) {cin >> u.x >> u.y;it = s.lower_bound(u);if (it == s.begin() || (--it)->y > u.y) {s.insert(u);it = s.upper_bound(u);while (it != s.end() && it->y >= u.y) s.erase(it++);}cout << s.size() << endl;}if (t) cout << endl;}return 0;
}

UVA 11020 - Efficient Solutions(set)相关推荐

  1. uva 11020 - Efficient Solutions

    用可重集: 首先按照x排好序,然后只要找到下界,插入,然后把y坐标大于它的都删掉就行: 1 #include<cstdio> 2 #include<set> 3 using n ...

  2. 深度 | 香港中文大学(深圳)张大鹏教授:生物特征识别的新进展 | CCF-GAIR 2019

    https://www.toutiao.com/i6713840784291922445/ 2019-07-15 18:51:11 不止干货,张教授演讲中还夹杂了诸多宝贵的史料 文 | 黄善清 AI ...

  3. 【深度学习】何恺明经典之作—2009 CVPR Best Paper | Dark Channel Prior

    本文介绍一下中国大陆第一篇计算机视觉顶会的best paper,也是何恺明第一次在计算机视觉领域大放异彩的一篇经典之作-Dark Channel Prior.另外本文在Dark Channel Pri ...

  4. 算法竞赛入门与进阶 (一)枚举

    枚举 1.关键点:不重复不遗漏 2.优化:把多余的操作去掉 例一: 在一个N*N(N<=100)矩阵中求一个最大的正方形使得该正方形的四个顶点都是有字符"#"构成.  #*# ...

  5. Python算法(含源代码下载)

    关键字:Python Algorithms Python算法  Mastering Basic Algorithms in the Python Language 使用Python语言掌握基本算法 P ...

  6. 移动计算云分布式数据缓存服务,实现快速可靠的跨区域多活复制

    摘要:本文介绍了一种在移动计算云中扩展分布式数据缓存服务以实现跨区域多活复制的方案. 本文分享自华为云社区<移动计算云分布式数据缓存服务,实现快速可靠的跨区域多活复制>,作者: 敏捷的小智 ...

  7. pareto解是什么意思_Pareto是什么意思

    1. It is OK that western economics thinks sound assignment system is spent fall in condition of esta ...

  8. Indexes and Indexing

    许多因素决定了 MySQL 的性能,但索引是最为特殊的,因为没有它们就无法实现性能.您可以删除其他因素(查询[query].模式[schema].数据[data]等)并仍然获得性能,但删除索引会将性能 ...

  9. 语法入门*算法入门题单

    作者:王清楚 链接:https://ac.nowcoder.com/discuss/817596?type=101&order=0&pos=1&page=4&chann ...

最新文章

  1. language wars
  2. 1:ImageNet Classification with Deep Convolutional Neural Networks
  3. TF之LSTM:利用基于顺序的LSTM回归算法对DIY数据集sin曲线(蓝虚)预测cos(红实)(TensorBoard可视化)
  4. javaWeb项目 IDEA中导入eclipes项目的方法。maven多模块项目(父子模块)与普通的web项目导入
  5. 云和恩墨吴涵文:开源将加速成为中国未来发展基础软硬件技术的关键路径
  6. 一个咸鱼的python_一个咸鱼的Python爬虫之路(三):爬取网页图片
  7. win10系统小米妙享中心,在手机可搜索到电脑,与之跨屏协作
  8. 【TB-02 Kit 蓝牙Mesh连接天猫精灵】 --AT固件适配任意设备(风扇空调饮水机)
  9. Redis 集群规范(中文稿)(MOVED错误码及ASK错误码
  10. 贴片绕线电感和贴片电感的区别
  11. 【C++初阶】C++入门一(命名空间、输入输出、缺省参数、函数重载等)
  12. 关于利用postman来模拟并发请求
  13. usaco1.3 calfflac 2008.11.5
  14. Emgu-WPF 激光雷达研究-绘制雷达图
  15. Matlab中 strcmp函数使用
  16. 2023游戏开发制作如何选择合适的游戏引擎?看完本文就知道
  17. Linux系统基础(一篇搞定基本应用)
  18. Linux:CentOS 7中常用的基础命令
  19. word打印缺字解决方案
  20. 【S32K学习笔记】PIT

热门文章

  1. JAVA NIO 内存泄露
  2. 算法学习之路|统计同成绩学生
  3. df命令、du命令、磁盘分区(fdisk命令)
  4. sys.argv[]学习
  5. jquery.chosen.js下拉选择框美化插件项目实例
  6. 腾讯3366小游戏站算法被破解
  7. rails 如何 支持 bootstrap3
  8. Solidity合约记录——(三)如何在合约中对操作进行权限控制
  9. Kafka实现细节(下)
  10. Django-Ajax进阶