摘要: 原题链接:103. 电影 解题思路 虽然语言的范围在int以内,但是这m部电影与n个人最多涉及 2(m+n) 种语言。我们把所有电影和人涉及的语言放进一个数组,排序并离散化,用一个 1~2(m+n) 之间的整数代替每种语言。此时我们就可以利用数组直接统计会上述每种语言的人的数量,从而选择满足题目要求 阅读全文
posted @ 2020-12-28 15:45 hnkjdx_react 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 原题链接:113. 特殊排序 解题思路 根据数学归纳法,假设前k-1哥元素之间的大小关系是已经按照要求排成一行,如果可以确定第k个元素应该放在哪一个前面,即可解决问题。 我们可以通过哟这样一种二分法确定第k个元素的位置:若第k个元素比第mid个元素小,令r=mid,否则令l=mid+1。二分的初始区 阅读全文
posted @ 2020-12-28 15:28 hnkjdx_react 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 原题链接:102. 最佳牛围栏 解题思路 ####本题题意为:给定正整数序列A,求一个平均数最大的、长度不小于L的(连续的)子段。 首先我们可以这样理解,我们要寻找一段数列,这个数列满足,长度不小于L,并且它的子段和非负。也就是我们需要的二分判定。 二分:首先我们的mid=(l+r)/2,记住这里不 阅读全文
posted @ 2020-12-28 15:07 hnkjdx_react 阅读(108) 评论(0) 推荐(0) 编辑
摘要: 原题链接:101. 最高的牛 解题思路 ####差分+区间处理小操作 这道题目的一个核心要点,就是如何处理这些特殊的关系,也就是两头牛能互相看见。 其实题目中已经告诉我们如何处理,因为我们发现,题目中要求牛的身高最高,那么既然如此,我们完全可以将每一组关系(A,B),看作[A+1,B-1]这组牛身高 阅读全文
posted @ 2020-12-28 14:37 hnkjdx_react 阅读(98) 评论(0) 推荐(0) 编辑