Menu
CoddyTech

Meeting Rooms II

Toplantıların listesini iki dizi olarak alırsın: i numaralı toplantı starts[i] anında başlar ve ends[i] anında biter. Bir oda aynı anda tek bir toplantıya ev sahipliği yapar ve bir toplantı, o odadaki başka bir toplantının bittiği anda başlayabilir.

Tüm toplantılara ev sahipliği yapabilecek en az sayıda odayı döndüren minMeetingRooms adlı bir fonksiyon yaz.

Fonksiyon

minMeetingRooms(starts: integer-array, ends: integer-array) → integer
startsinteger-array
her toplantının başlangıç saati
endsinteger-array
her toplantının bitiş zamanı, başlangıç zamanıyla aynı indekste
Döndürürinteger
tüm toplantıları barındırabilecek en az sayıda oda

Kısıtlar

  • 1 ≤ starts.length == ends.length ≤ 5000
  • 0 ≤ starts[i] < ends[i] ≤ 106
  • Toplantılar sıralanmamıştır. İki toplantı aynı olabilir.

Örnekler

Girdi
starts = [4, 1, 7, 2]ends = [8, 5, 9, 6]
Çıktı
3
Açıklama
4. zamanda 1'den 5'e, 2'den 6'ya ve 4'ten 8'e kadar olan toplantıların hepsi devam ediyor; bu yüzden en az 3 odaya ihtiyacın var. Üç oda yeterlidir: 7'den 9'a kadar olan toplantı, 5'te boşalan odayı kullanır.

lock iconGönderirken +17 gizli test

challenge icon

Ek soru

Her toplantının hangi odaya gittiğini de, yanıttakinden daha fazla oda kullanmadan söyleyebilir misin?

Kodu sıfırla
def minMeetingRooms(starts, ends):
    # Kodu buraya yazın
Test durumları

Durum 1

Durum 2

Durum 3

Girdi

starts = [4, 1, 7, 2]
ends = [8, 5, 9, 6]

Beklenen

3