当前位置: 首页 > news >正文

LeetCode【2251. 花期内花的数目】

给你一个下标从 0 开始的二维整数数组 flowers ,其中 flowers[i] = [starti, endi] 表示第 i 朵花的 花期 从 starti 到 endi (都 包含)。同时给你一个下标从 0 开始大小为 n 的整数数组 people ,people[i] 是第 i 个人来看花的时间。

请你返回一个大小为 n 的整数数组 answer ,其中 answer[i]是第 i 个人到达时在花期内花的 数目 。

示例 1:

输入:flowers = [[1,6],[3,7],[9,12],[4,13]], people = [2,3,7,11]
输出:[1,2,2,2]
解释:上图展示了每朵花的花期时间,和每个人的到达时间。
对每个人,我们返回他们到达时在花期内花的数目。

示例 2:

输入:flowers = [[1,10],[3,3]], people = [3,3,2]
输出:[2,2,1]
解释:上图展示了每朵花的花期时间,和每个人的到达时间。
对每个人,我们返回他们到达时在花期内花的数目。

提示:

  • 1 <= flowers.length <= 5 * 104
  • flowers[i].length == 2
  • 1 <= starti <= endi <= 109
  • 1 <= people.length <= 5 * 104
  • 1 <= people[i] <= 109

答:

import java.util.Arrays;public class Solution {public int[] numFlowersInBloom(int[][] flowers, int[] people) {Arrays.sort(flowers, (a, b) -> Integer.compare(a[1], b[1])); // 按结束时间排序int n = people.length;int[] answer = new int[n];int ptr = 0; // 指向当前未被看的花期for (int i = 0; i < n; i++) {int arriveTime = people[i];// 找到所有结束时间小于等于arriveTime的花期,并统计花的数量while (ptr < flowers.length && flowers[ptr][1] <= arriveTime) {if (flowers[ptr][0] <= arriveTime) { // 花期的开始时间小于等于arriveTimeanswer[i]++;}ptr++;}}return answer;}public static void main(String[] args) {Solution solution = new Solution();int[][] flowers = {{1,6},{3,7},{9,12},{4,13}};int[] people = {2,3,7,11};int[] result = solution.numFlowersInBloom(flowers, people);System.out.println(Arrays.toString(result)); // 输出:[1, 2, 2, 2]}
}

http://www.lryc.cn/news/177946.html

相关文章:

  • 大数据(九):数据可视化(一)
  • 讲讲项目里的仪表盘编辑器(二)
  • 文心一言 VS 讯飞星火 VS chatgpt (102)-- 算法导论9.3 8题
  • axios添加缓存请求,防止多次请求,单页面多个同一组件造成多次请求解决方案
  • Java包装类与自动拆箱装箱
  • 基于SpringBoot网上超市的设计与实现【附万字文档(LW)和搭建文档】
  • 二、C++项目:仿muduo库实现并发服务器之时间轮的设计
  • 计算机竞赛 深度学习OCR中文识别 - opencv python
  • 蓝桥等考Python组别五级003
  • 学之思项目第一天-完成项目搭建
  • pandas--->CSV / JSON
  • LeetCode算法二叉树—116. 填充每个节点的下一个右侧节点指针
  • 二、2023.9.28.C++基础endC++内存end.2
  • DevSecOps 将会嵌入 DevOps
  • 不同管径地下管线的地质雷达响应特征分析
  • 【接口测试学习】白盒测试 接口测试 自动化测试
  • 7.网络原理之TCP_IP(下)
  • Docker Dockerfile解析
  • 浏览器从输入URL到页面展示这个过程中都经历了什么
  • 2023-09-22 monetdb-事务管理-乐观并发控制-记录
  • 蓝桥等考Python组别四级008
  • SpringMVC 学习(二)Hello SpringMVC
  • 交换机之间配置手动|静态链路聚合
  • Shiro高级及SaaS-HRM的认证授权
  • eclipse svn插件安装
  • C语言 cortex-A7核 UART总线 实验
  • 不同走向地下管线的地质雷达响应特征分析
  • Nginx负载均衡详解
  • 基于Spring Boot的宠物咖啡馆平台的设计与实现
  • TYVJ P1026 犁田机器人