Meeting Rooms

Problem

Given an array of meeting time intervals where intervals[i] = [starti, endi], determine if a person could attend all meetings.

Example 1:

Input: intervals = [[0,30],[5,10],[15,20]]
Output: false

Example 2:

Input: intervals = [[7,10],[2,4]]
Output: true

Constraints:

  • 0 <= intervals.length <= 104
  • intervals[i].length == 2
  • 0 <= starti < endi <= 106

Solution

class Solution {
    public boolean canAttendMeetings(int[][] intervals) {
        Arrays.sort(intervals, (l, r) -> {
            return Integer.compare(l[0], r[0]);
        });
        var t = -1;
        for (var i : intervals) {
            if (t > i[0]) {
                // conflict
                return false;
            } else {
                t = i[1];
            }
        }

        return true;
    }
}

Recent posts from blogs that I like

Video + notes on upgrading a Datasette plugin for the latest 1.0 alpha, with help from uv and OpenAI Codex CLI

via Simon Willison

Reading Visual Art: 233 Sirens

They tried to lure Odysseus and his crew to their deaths, and the same with Jason and his Argonauts. With the head of a beautiful woman and the legs of a bird, their singing was alluring to sailors.

via The Eclectic Light Company

A list of books and essays that I love

I’m purposefully not looking at my bookshelf to make sure I only pick books that I’ve thought about so much that they immediately occur to me.

via Henrik Karlsson