공강시간표 만드는 코드
이름, 시간표(월화수목금)이 입력되어있는 시간표를 읽어 공강 시간표를 만든다.
입력파일(*.txt) 예시(이하12줄)
김철수
1.5:4.5 7.5:9
1.5:4.5 6:7.5
1.5:4.5 7.5:9
1.5:4.5 6:7.5
x
이영희s
9.5:12.5 15.5:17
9.5:12.5 14:16
9.5:12.5 15.5:17
9.5:12.5 14:16
x
둘은 같은 시간표를 가지고 있다.
위 데이터는 김철수와 이영희에 대한 시간표이다. 이하는 제한사항이다.
각 객체의 데이터는 6줄, 첫 번째 줄은 이름이어야 한다.
이름 이하 5줄을 월화수목금 시간표로 처리한다.
1-1 시작시간:종료시간 시작시간:종료시간 ... 의 형식으로 적는다.
1-2 이름 뒤에 붙은 's'의 의미는 다음과 같다
1-2.1 붙었을 경우(이영희s) : 이하의 데이터는 시간(24시표기법) 이다.
1-2.2 붙지않을경우(김철수) : 이하의 데이터는 교시(서울대학교 기준 0교시 8:00)이다.
공강인 날은 x 또는 X를 적어 둔다.
실행 시 같은 디렉토리에 있는 모든 *.txt 파일을 읽어들여 시간표로 처리한다.
속도향상을 위해 try-exception 예외처리는 없다. 추후 추가하자.
stdout에 출력한 후 각 개인의 시간표를 /results 폴더에 파일로 출력한다.
예시 입력
김철수
3:6
3:4.5 6:9
3:9.5
3:4.5 6:10 10.5:12.5
6:7.5
이영희
0:2 3:4 6:10 11:12
1:4 5:8
7:9
3:5 6:9
5:8
박영수
4.5:6 7.5:10.5
1.5:4.5 6:7.5
4.5:6 7.5:10.5
1.5:4.5 6:7.5
x
최길동s
9.5:12.5
11:12.5 14:15.5 16:18
9.5:12.5 16:18
11:12.5 14:15.5 16:18
13:17
예시 출력
시간표 제출자 : 김철수 박영수 이영희 최길동
월요일
8.0 ~ 8.5시 : 김철수 박영수 최길동
8.5 ~ 9.0시 : 김철수 박영수 최길동
9.0 ~ 9.5시 : 김철수 박영수 최길동
9.5 ~ 10.0시 : 김철수 박영수
10.0 ~ 10.5시 : 김철수 박영수 이영희
10.5 ~ 11.0시 : 김철수 박영수 이영희
11.0 ~ 11.5시 : 박영수
11.5 ~ 12.0시 : 박영수
12.0 ~ 12.5시 : 박영수 이영희
12.5 ~ 13.0시 : 이영희 최길동
13.0 ~ 13.5시 : 이영희 최길동
13.5 ~ 14.0시 : 이영희 최길동
14.0 ~ 14.5시 : 김철수 박영수 최길동
14.5 ~ 15.0시 : 김철수 박영수 최길동
15.0 ~ 15.5시 : 김철수 박영수 최길동
15.5 ~ 16.0시 : 김철수 최길동
16.0 ~ 16.5시 : 김철수 최길동
16.5 ~ 17.0시 : 김철수 최길동
17.0 ~ 17.5시 : 김철수 최길동
17.5 ~ 18.0시 : 김철수 최길동
18.0 ~ 18.5시 : 김철수 이영희 최길동
18.5 ~ 19.0시 : 김철수 박영수 이영희 최길동
19.0 ~ 19.5시 : 김철수 박영수 최길동
19.5 ~ 20.0시 : 김철수 박영수 최길동
20.0 ~ 20.5시 : 김철수 박영수 이영희 최길동
20.5 ~ 21.0시 : 김철수 박영수 이영희 최길동
21.0 ~ 21.5시 : 김철수 박영수 이영희 최길동
21.5 ~ 22.0시 : 김철수 박영수 이영희 최길동
화요일
8.0 ~ 8.5시 : 김철수 박영수 이영희 최길동
8.5 ~ 9.0시 : 김철수 박영수 이영희 최길동
9.0 ~ 9.5시 : 김철수 박영수 최길동
9.5 ~ 10.0시 : 김철수 최길동
10.0 ~ 10.5시 : 김철수 최길동
10.5 ~ 11.0시 : 김철수 최길동
11.0 ~ 11.5시 :
11.5 ~ 12.0시 :
12.0 ~ 12.5시 : 이영희
12.5 ~ 13.0시 : 김철수 박영수 이영희 최길동
13.0 ~ 13.5시 : 김철수 박영수 최길동
13.5 ~ 14.0시 : 김철수 박영수 최길동
14.0 ~ 14.5시 :
14.5 ~ 15.0시 :
15.0 ~ 15.5시 :
15.5 ~ 16.0시 : 박영수 최길동
16.0 ~ 16.5시 : 박영수 이영희
16.5 ~ 17.0시 : 박영수 이영희
17.0 ~ 17.5시 : 김철수 박영수 이영희
17.5 ~ 18.0시 : 김철수 박영수 이영희
18.0 ~ 18.5시 : 김철수 박영수 이영희 최길동
18.5 ~ 19.0시 : 김철수 박영수 이영희 최길동
19.0 ~ 19.5시 : 김철수 박영수 이영희 최길동
19.5 ~ 20.0시 : 김철수 박영수 이영희 최길동
20.0 ~ 20.5시 : 김철수 박영수 이영희 최길동
20.5 ~ 21.0시 : 김철수 박영수 이영희 최길동
21.0 ~ 21.5시 : 김철수 박영수 이영희 최길동
21.5 ~ 22.0시 : 김철수 박영수 이영희 최길동
수요일
8.0 ~ 8.5시 : 김철수 박영수 이영희 최길동
8.5 ~ 9.0시 : 김철수 박영수 이영희 최길동
9.0 ~ 9.5시 : 김철수 박영수 이영희 최길동
9.5 ~ 10.0시 : 김철수 박영수 이영희
10.0 ~ 10.5시 : 김철수 박영수 이영희
10.5 ~ 11.0시 : 김철수 박영수 이영희
11.0 ~ 11.5시 : 박영수 이영희
11.5 ~ 12.0시 : 박영수 이영희
12.0 ~ 12.5시 : 박영수 이영희
12.5 ~ 13.0시 : 이영희 최길동
13.0 ~ 13.5시 : 이영희 최길동
13.5 ~ 14.0시 : 이영희 최길동
14.0 ~ 14.5시 : 박영수 이영희 최길동
14.5 ~ 15.0시 : 박영수 이영희 최길동
15.0 ~ 15.5시 : 박영수 최길동
15.5 ~ 16.0시 : 최길동
16.0 ~ 16.5시 :
16.5 ~ 17.0시 :
17.0 ~ 17.5시 : 이영희
17.5 ~ 18.0시 : 김철수 이영희
18.0 ~ 18.5시 : 김철수 이영희 최길동
18.5 ~ 19.0시 : 김철수 박영수 이영희 최길동
19.0 ~ 19.5시 : 김철수 박영수 이영희 최길동
19.5 ~ 20.0시 : 김철수 박영수 이영희 최길동
20.0 ~ 20.5시 : 김철수 박영수 이영희 최길동
20.5 ~ 21.0시 : 김철수 박영수 이영희 최길동
21.0 ~ 21.5시 : 김철수 박영수 이영희 최길동
21.5 ~ 22.0시 : 김철수 박영수 이영희 최길동
목요일
8.0 ~ 8.5시 : 김철수 박영수 이영희 최길동
8.5 ~ 9.0시 : 김철수 박영수 이영희 최길동
9.0 ~ 9.5시 : 김철수 박영수 이영희 최길동
9.5 ~ 10.0시 : 김철수 이영희 최길동
10.0 ~ 10.5시 : 김철수 이영희 최길동
10.5 ~ 11.0시 : 김철수 이영희 최길동
11.0 ~ 11.5시 :
11.5 ~ 12.0시 :
12.0 ~ 12.5시 :
12.5 ~ 13.0시 : 김철수 박영수 최길동
13.0 ~ 13.5시 : 김철수 박영수 이영희 최길동
13.5 ~ 14.0시 : 김철수 박영수 이영희 최길동
14.0 ~ 14.5시 :
14.5 ~ 15.0시 :
15.0 ~ 15.5시 :
15.5 ~ 16.0시 : 박영수 최길동
16.0 ~ 16.5시 : 박영수
16.5 ~ 17.0시 : 박영수
17.0 ~ 17.5시 : 박영수 이영희
17.5 ~ 18.0시 : 박영수 이영희
18.0 ~ 18.5시 : 김철수 박영수 이영희 최길동
18.5 ~ 19.0시 : 박영수 이영희 최길동
19.0 ~ 19.5시 : 박영수 이영희 최길동
19.5 ~ 20.0시 : 박영수 이영희 최길동
20.0 ~ 20.5시 : 박영수 이영희 최길동
20.5 ~ 21.0시 : 김철수 박영수 이영희 최길동
21.0 ~ 21.5시 : 김철수 박영수 이영희 최길동
21.5 ~ 22.0시 : 김철수 박영수 이영희 최길동
금요일
8.0 ~ 8.5시 : 김철수 박영수 이영희 최길동
8.5 ~ 9.0시 : 김철수 박영수 이영희 최길동
9.0 ~ 9.5시 : 김철수 박영수 이영희 최길동
9.5 ~ 10.0시 : 김철수 박영수 이영희 최길동
10.0 ~ 10.5시 : 김철수 박영수 이영희 최길동
10.5 ~ 11.0시 : 김철수 박영수 이영희 최길동
11.0 ~ 11.5시 : 김철수 박영수 이영희 최길동
11.5 ~ 12.0시 : 김철수 박영수 이영희 최길동
12.0 ~ 12.5시 : 김철수 박영수 이영희 최길동
12.5 ~ 13.0시 : 김철수 박영수 이영희 최길동
13.0 ~ 13.5시 : 김철수 박영수
13.5 ~ 14.0시 : 김철수 박영수
14.0 ~ 14.5시 : 박영수
14.5 ~ 15.0시 : 박영수
15.0 ~ 15.5시 : 박영수
15.5 ~ 16.0시 : 김철수 박영수
16.0 ~ 16.5시 : 김철수 박영수 이영희
16.5 ~ 17.0시 : 김철수 박영수 이영희
17.0 ~ 17.5시 : 김철수 박영수 이영희 최길동
17.5 ~ 18.0시 : 김철수 박영수 이영희 최길동
18.0 ~ 18.5시 : 김철수 박영수 이영희 최길동
18.5 ~ 19.0시 : 김철수 박영수 이영희 최길동
19.0 ~ 19.5시 : 김철수 박영수 이영희 최길동
19.5 ~ 20.0시 : 김철수 박영수 이영희 최길동
20.0 ~ 20.5시 : 김철수 박영수 이영희 최길동
20.5 ~ 21.0시 : 김철수 박영수 이영희 최길동
21.0 ~ 21.5시 : 김철수 박영수 이영희 최길동
21.5 ~ 22.0시 : 김철수 박영수 이영희 최길동