leetcode1353. 最多可以参加的会议数目(贪心算法)
生活随笔
收集整理的這篇文章主要介紹了
leetcode1353. 最多可以参加的会议数目(贪心算法)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
給你一個(gè)數(shù)組 events,其中 events[i] = [startDayi, endDayi] ,表示會(huì)議 i 開始于 startDayi ,結(jié)束于 endDayi 。
你可以在滿足 startDayi <= d <= endDayi 中的任意一天 d 參加會(huì)議 i 。注意,一天只能參加一個(gè)會(huì)議。
請(qǐng)你返回你可以參加的 最大 會(huì)議數(shù)目。
代碼
class Solution {public int maxEvents(int[][] events) {Arrays.sort(events,((o1, o2) ->o1[0]-o2[0]));//按開始時(shí)間排序PriorityQueue<int[]> pq=new PriorityQueue<>(((o1, o2) -> o1[1]-o2[1]));//按結(jié)束時(shí)間排序int res=0,i=0,day=1;while (!pq.isEmpty()||i<events.length){while (i<events.length&&events[i][0]==day)//將同一開始時(shí)間的入隊(duì){pq.offer(events[i]);i++;}while (!pq.isEmpty())//找出吻合當(dāng)前day的結(jié)束時(shí)間{int[] temp=pq.poll();if(temp[1]>=day){res++;break;}}day++;//查找下一天}return res;} }總結(jié)
以上是生活随笔為你收集整理的leetcode1353. 最多可以参加的会议数目(贪心算法)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode1253. 重构 2 行
- 下一篇: leetcode1536. 排布二进制网