字节跳动2018校招算法方向(第一批)——1-最外层点(代码片段)

Alex_996 Alex_996     2022-11-29     628

关键词:

时间限制: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 = 0
	point_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]

2021校招字节跳动提前批

字节跳动提前批目录字节跳动提前批内容项目Java基础算法计算机网络设计模式数据库Linux总结时间:2020-07-0918:00-19:00内容项目背景:基于ZooKeeper的配置中心问题:项目的背景如何实现分布式锁的实现Java基础问题:HasMap的数据结... 查看详情

❤️tiktok字节跳动编程题实战2022校招——吐血分享总结。(代码片段)

❤️TikTok字节跳动编程题实战2022校招——吐血分享总结。前言+说明一、算法编程题(种树)二、算法编程题(小A的吃鸡之旅)三、算法编程题(有序最大K位数)四、算法编程题(测试计划的最大... 查看详情

求职字节跳动2019校招机器学习算法工程师面试

面试问题总结。 问题:1.自我介绍。2.介绍了一下自己简历上的项目。3.SVM详细原理。4.Kmeans原理,何时停止迭代。算法题:1.一个随机整数产生器产生[1,5],如何设计一个产生[1,7]的随机整数产生器。解法:设k1,k2属于[1,5]... 查看详情

字节跳动2-1三轮大数据方向算法20220330(代码片段)

新鲜出炉,大数据的总监,一上来什么都没问,让我写一个非递归后续遍历。很不好意思让他打脸了,这个题我做过5片了,理解上还是很深刻的。我就想对他说为啥面试连自我介绍都不给我,就让我做题&#... 查看详情

字节跳动2-1三轮大数据方向算法20220330(代码片段)

新鲜出炉,大数据的总监,一上来什么都没问,让我写一个非递归后续遍历。很不好意思让他打脸了,这个题我做过5片了,理解上还是很深刻的。我就想对他说为啥面试连自我介绍都不给我,就让我做题&#... 查看详情

爱奇艺2018秋季校招算法工程师(第一场)

欢迎forkandstar:Nowcoder-Repository-github括号匹配深度题目:链接:https://www.nowcoder.com/questionTerminal/a2d5b1875bb0408384278f40d1f236c9来源:牛客网一个合法的括号匹配序列有以下定义:1、空串""是一个合法的括号匹配序列2、如果"X&q... 查看详情

字节跳动技术新人培训全记录:校招萌新成长指南

...培训,让校招同学惊喜到要「再来一次」?潜入字节跳动技术新人培训「星火计划」现场,全程围观之后,技术范儿小编发现在这场活动上:不仅能从全盘了解了字节跳动到底是如何做技术的;更能学到如... 查看详情

手把手教你写!字节跳动正式启动2021届秋季校招

正文这次写一下springboot与redis的结合,这里使用的是redis集群模式(主从),主从环境的搭建,请参考redis集群搭建搭建完redis集群环境后,开始springboot之旅1、REDIS介绍redis的介绍及应用场景参考redis介绍2、... 查看详情

今日头条2018校招后端方向(第二批)第一题二分查找(代码片段)

原题链接 https://www.nowcoder.com/test/8537209/summary题意n个数 q个查询 L,R,K L到R区间内为K的数有多少个数据范围 n<=300000,q<=300000 解析 对于每次查询必须要O(logn)复杂度才行 所以想到二分查找 因为数... 查看详情

2018秋招校招后端方向(第二批)(代码片段)

用户喜好  为了不断优化推荐效果,今日头条每天要存储和处理海量数据。假设有这样一种场景:我们对用户按照它们的注册时间先后来标号,对于一类文章,每个用户都有不同的喜好值,我们会想知道某一段时间内注册的用... 查看详情

字节跳动笔试题——算法岗

目录1.写一个函数,将单向链表反转  查看详情

极客日报:腾讯启动最大规模校招;字节跳动否认“重启上市计划”传闻

...品|CSDN(ID:CSDNnews)一分钟速览新闻点!字节跳动否认“重启上市计划”传闻腾讯网启用新域名”QQ.中国”腾讯回应微视裁员:消息不实,系公司业务调整小米MIX4设计曝光:潜望三摄、全陶瓷机身华为... 查看详情

字节跳动面试笔试总结——算法岗位

目录1.一棵二叉树,求最大通路长度(即最大左右子树高度之和)  查看详情

字节跳动开源最新gan压缩算法,算力消耗可减少至1/46(代码片段)

字节跳动近期开源了一项代号为OMGD的压缩技术。这是字节自研的GAN(生成对抗网络)压缩算法,在保证生成效果不变的前提下,算力消耗最低可以减少到原来的1/46,相比之前业界的最佳压缩效果提升一倍多。... 查看详情

2021年前端大厂(腾讯字节跳动阿里......)校招面试真题解析,让你面试轻松无压力!

前言校招很重要,应届生的身份很珍贵!在校招的时候与我们竞争的大部分都是没有工作经验的学生,而且校招企业对学生的包容度高,一般对企业来说,社招更看重实际工作经验,而校招更愿意“培养人... 查看详情

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

...激烈的秋招还有一条通往offer的“捷径”——秋招提前批字节跳动的研发提前批倒计时最后一周还有同学没搭上「提前批」这趟快车吗?和正式秋招相比提前批的优势还是非常明显的『岗位多,机会多』提前批招聘量达到... 查看详情

java小米集团-2021校招-算法方向在线考试(矩阵相乘+盒子包裹问题)(代码片段)

前言楼主参加笔试之前去字节面试了,又是被虐的一次,所以笔试迟到40分钟,而且被字节虐的脑子转不动了,今天笔试很简单,但是我做得不是很理想,希望大家多多说一下自己的思路。祝大家都有心仪... 查看详情

字节跳动2-1算法二轮面试202203-29(代码片段)

罗马数字包含以下七种字符: I, V, X, L,C,D 和 MI      1V      5X      10L      50C      100D      500M      1000这道题对应的是leetcode 中的12.整数转罗马数字packageexample;publicclass... 查看详情