[BOJ] 그리디 알고리즘/1931번 - 회의실 배정
문제
제출 답안
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int meetingNum = sc.nextInt();
int[][] meetingInfo = new int[meetingNum][2];
for(int i=0; i<meetingInfo.length; i++) {
meetingInfo[i][0] = sc.nextInt();
meetingInfo[i][1] = sc.nextInt();
}
Arrays.sort(meetingInfo, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
if(o1[1] == o2[1]) {
return o1[0] - o2[0]; // 종료시간이 같을 경우 시작시간을 기준으로 정렬
}else {
return o1[1] - o2[1]; // 종료시간이 다를 경우 종료시간을 기준으로 정렬
}
}
});
int allowMeetingCount = 0;
int prevMeetingEndTime = 0;
for(int j=0; j<meetingInfo.length; j++){
if(meetingInfo[j][0] >= prevMeetingEndTime) { // 직전 회의종료시간이 다음 회의시작시간보다 작을 경우
allowMeetingCount++;
prevMeetingEndTime = meetingInfo[j][1];
}
}
System.out.println(allowMeetingCount);
sc.close();
}
}
출처
Author And Source
이 문제에 관하여([BOJ] 그리디 알고리즘/1931번 - 회의실 배정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@s2na/BOJ-그리디-알고리즘1931번-회의실-배정저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)