Menu
CoddyTech

Meeting Rooms II

מקבלים רשימה של פגישות כשני מערכים: פגישה i נמשכת מ-starts[i] עד ends[i]. בכל חדר מתקיימת פגישה אחת בכל פעם, ופגישה יכולה להתחיל בחדר בדיוק ברגע שפגישה אחרת בו מסתיימת.

כתבו פונקציה בשם minMeetingRooms שמחזירה את מספר החדרים הקטן ביותר שיכול להכיל את כל הפגישות.

פונקציה

minMeetingRooms(starts: integer-array, ends: integer-array) → integer
startsinteger-array
שעת ההתחלה של כל פגישה
endsinteger-array
שעת הסיום של כל פגישה, באותו אינדקס כמו שעת ההתחלה שלה
מחזירהinteger
מספר החדרים הקטן ביותר שיכול להכיל את כל הפגישות

אילוצים

  • 1 ≤ starts.length == ends.length ≤ 5000
  • 0 ≤ starts[i] < ends[i] ≤ 106
  • הפגישות אינן ממוינות. שתי פגישות עשויות להיות זהות.

דוגמאות

קלט
starts = [4, 1, 7, 2]ends = [8, 5, 9, 6]
פלט
3
הסבר
בזמן 4 הפגישות מ־1 עד 5, מ־2 עד 6 ומ־4 עד 8 מתקיימות כולן, ולכן צריך לפחות 3 חדרים. שלושה מספיקים: הפגישה מ־7 עד 9 משתמשת בחדר שמתפנה ב־5.

lock icon+17 בדיקות נסתרות בשליחה

challenge icon

שאלת המשך

האם תוכלו גם לציין לאיזה חדר משויכת כל פגישה, תוך שימוש במספר חדרים שאינו עולה על התשובה?

איפוס הקוד
def minMeetingRooms(starts, ends):
    # כתבו כאן קוד
מקרי בדיקה

מקרה 1

מקרה 2

מקרה 3

קלט

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

צפוי

3