Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*; //Arrays, Comparator, PriortyQueue, Queue, Scanner
- public class RoomSchedule {
- public static void main(String args[]) {
- System.out.print("enter an integer: ");
- Scanner input = new Scanner(System.in);
- int number = input.nextInt();
- ScheduleFactory factory = new ScheduleFactory();
- int schedules[][] = factory.getSchedule(number);
- System.out.print("minimum number of rooms: " + minRooms(schedules));
- }
- public static int minRooms(int[][] schedules) {
- if (schedules.length == 0) return 0;
- Arrays.sort(schedules, Comparator.comparingInt(event -> event[0]));
- Queue<Integer> conflict = new PriorityQueue<>();
- conflict.add(schedules[0][1]);
- for (int i = 1; i < schedules.length; i++) {
- if (conflict.peek() < schedules[i][0]) conflict.poll();
- conflict.add(schedules[i][1]);
- } return conflict.size();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement