时间限制:C/C++ 1秒,其他语言2秒

空间限制:C/C++ 32M,其他语言64M

P为给定的二维平面整数点集。定义 P 中某点x,如果x满足 P 中任意点都不在 x 的右上方区域内(横纵坐标都大于x),则称其为“最大的”。求出所有“最大的”点的集合。(所有点的横坐标和纵坐标都不重复, 坐标轴范围在[0, 1e9) 内)

如下图:实心点为满足条件的点的集合。请实现代码找到集合 P 中的所有 ”最大“ 点的集合并输出。

输入描述:

第一行输入点集的个数 N, 接下来 N 行,每行两个数字代表点的 X 轴和 Y 轴。

对于 50%的数据, 1 <= N <= 10000;

对于 100%的数据, 1 <= N <= 500000;

输出描述:

输出“最大的” 点集合, 按照 X 轴从小到大的方式输出,每行两个数字分别代表点的 X 轴和 Y轴。

输入例子1:

5
1 2
5 3
4 6
7 5
9 0

输出例子1:

4 6
7 5
9 0

Ideas

首先可以发现所有 ”最大“ 点都在右上方围了一圈,因此可以利用这个特征来做题。

先把所有的点都按照y值排序,那么y值最大的那个点肯定是右下角的“最大”点,记为p0,然后按照y值依次往前遍历,遍历到p点的x值是大于前一个p点的x值,说明找到了一个“最大”点。

Code

Python

Python的代码只能过 9/10 组用例,最后一个内存超限,求大佬指点,怎么能过最后一组数据,我感觉可以优化的地方在处理输入的位置,暂时没想到更好的优化方案。

if __name__ == '__main__':point_list = []n = int(input())for _ in range(n):point_list.append(tuple(map(int, input().split())))max_x = 0point_list.sort(key=lambda x: x[1])for i in range(n - 1, -1, -1):if point_list[i][0] > max_x:print(f"{point_list[i][0]} {point_list[i][1]}")max_x = point_list[i][0]

字节跳动2018校招算法方向(第一批) —— 1-最外层点相关推荐

  1. 字节跳动2018校招前端方向(第三批)题目3

    题意:现在有一排房间每个房间里有若干的人,现在会将某个房间i里的人重新分配,分配的方法是首先让i房间里的人都出来,之后按照i+1,i+2....的顺序每个房间分一个人,n号房间的下一个房间为1号房间, ...

  2. 2020字节跳动校园招聘算法方向第一场考试题解

    第一题 [题意] 给出<a,b>,可以理解为a的爸爸是b,现在你要依次输出每个爸爸的所有儿子,儿子之间按照字典序排序 [思路] 思路不难,用map将爸爸的名字映射成数字,然后建一个二维ve ...

  3. 字节跳动2018校招前端面试题

    import java.util.*;public class Main {public static void main(String[] args){//连通的格子数目不能超过4Scanner s ...

  4. 字节跳动2022校招研发提前批宣讲会,同学们最关心的10个问题

    字节跳动 2022 校招研发提前批 7 场宣讲会,已经全部结束啦,不知道你是否已经充分了解了字节跳动,选好了想去的岗位和团队呢? 如果你真的真的真的没有时间,错过了宣讲会的话,不要担心,我们整理了宣讲 ...

  5. 网易2020校招数据分析方向提前批笔试题解析

    网易2020校招数据分析方向提前批笔试题 选择题 简答题 编程题 选择题 有一类二叉树用三叉链表来存储的时候除了带有指向左右孩子节点的两个指针,还有指向父节点的指针,那么这样一棵二叉树有2个节点,那么 ...

  6. 关于字节跳动前端校招一二三面+HR面试过程

    分享一下字节跳动 前端校招 一二三面+hr面 一面 (视频面 1小时35分钟) 20年3月1日 标题 自我介绍 vue和react有什么区别,更喜欢用哪个,为什么 react hook熟悉吗,解决了什 ...

  7. 【前端面试】字节跳动2019校招面经 - 前端开发岗(二)

    [前端面试]字节跳动2019校招面经 - 前端开发岗(二) 因为之前的一篇篇幅有限,太长了看着也不舒服,所以还是另起一篇吧? 一. jQuery和Vue的区别 jQuery 轻量级Javascript ...

  8. 字节跳动2018.11校招测试岗笔试(回忆版)

    背景:           东北某985高校专场招聘,11月上旬,是字节跳动第二次来,本次是专岗招聘(测试工程师和测试开发工程师),据说是公司发展太快现缺测试.参加的人还是很多的,然而非计算机专业的不 ...

  9. 最后一周!4000+HC免笔试!字节跳动2022校招研发提前批倒计时

    临近八月,马上就快到各大公司秋招开启的黄金季啦! 但其实相比竞争最为激烈的秋招 还有一条通往offer的"捷径"--秋招提前批 字节跳动的研发提前批倒计时最后一周 还有同学没搭上「 ...

最新文章

  1. python tqdm添加进度条
  2. cplex学术版安装
  3. VC++ VS2010 error LNK1123 转换到 COFF 期间失败 怎么办
  4. JavaScript——易班优课YOOC课群在线测试答案隐藏解决方案
  5. (4) ebj学习:ejb发布web service
  6. Ajax基本案例详解之$.getjson的实现
  7. 【转】常用数学函数篇(Linux c)
  8. java中有序数组比无序数值好_java面向对象的有序数组和无序数组的比较
  9. 从虚幻 4 中采集 360 度立体电影
  10. linux禁止扫描端口,公网的服务器如何禁止别人扫描端口
  11. php语法中变量如何定义和使用,PHP语法—PHP的变量
  12. iphonex黑屏开不了机_iphonexr死机,iphonexr开不了机
  13. 2008RDS高可用:DNS轮询
  14. 中国大学生计算机设计大赛 历史作品博物馆
  15. stay here forever中文歌词
  16. JS手写实现call、apply、bind
  17. 自己写Anki插件-单词宝
  18. Android Studio文本编辑框EditText
  19. 在Word加载EndNote插件
  20. 在windows上编译apr库apr-util库

热门文章

  1. SQLServer之创建显式事务
  2. 根据图片URL获取图片的尺寸【Swift语言实现】
  3. Android系统匿名共享内存Ashmem(Anonymous Shared Memory)驱动程序源代码分析
  4. input border IE6 bug
  5. Postgres 数据库安装、配置、备份还原及存储过程
  6. struts2 s:optiontransferselect 标签的使用
  7. seo需要处理页面html,为什么单页面的seo不友好?如何解决这一问题?
  8. rest post无法取到request_小白学Flask第五天 | 详解很重要的request对象
  9. 【数据结构】—顺序表的插入、删除、查找操作
  10. linux convert 添加文字,Linux convert命令有什么用