Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Bài toán Meeting Rooms 2 trong JavaScript

Cho mảng các meeting [start, end]. Tìm số meeting tối đa có thể tham gia không trùng thời gian.

Ví dụ: [[5,40],[10,20],[25,35]] → 2 (chọn [10,20] và [25,35]).

Ví dụ

const arr = [[5, 40], [10, 20], [25, 35]];
const canAttendAll = (arr = []) => {
  const times = new Set();
  const { length } = arr;
  for (let i = 0; i < length; i++)
    for (let j = arr[i][0]; j < arr[i][1]; j++)
      if (times.has(j)) return false;
      else times.add(j);
  return true;
};
console.log(canAttendAll(arr));

Kết quả

false