당직 일정 비교
시간 제한1초메모리 제한1024 MB
두 당직 일정이 주어질 때, 첫 번째 일정에서 두 번째 일정으로 바뀌면서 팀원별 당직 시간이 얼마나 늘거나 줄었는지 이름순으로 출력합니다.
문제
당신은 사용자가 프로그래밍 과제를 풀 수 있도록 제공하는 고가용성 서비스의 당직자 중 한 명이다. 팀에는 시각마다 누가 서비스를 담당하는지 적힌 당직 일정표가 있다.
동료가 새 일정표를 보내왔다. 모든 팀원의 당직 시간이 이전과 같은지 확인하고, 차이가 있으면 출력하려 한다.
당직 일정표는 형식의 줄로 적힌다. 여기서 와 는 어떤 시작 시각부터 센 당직의 시작 오프셋과 끝 오프셋이고, 는 그 구간을 맡는 팀원이다.
예를 들어 다음 일정표를 보자.
0 7 jan
7 14 tomaz
14 20 jure
20 24 jan
24 25 tomaz
25 26 jure
jan은 처음 7시간(0시부터 6시까지) 당직이고, 이어지는 7시간은 tomaz가 맡는다. 전체로 보면 jan은 11시간, tomaz는 8시간, jure는 7시간 당직이다.
입력
입력은 두 개의 일정표로 이루어지며, 두 일정표는 ------ 줄로 구분된다. 각 일정표에는 형식의 줄이 한 줄 이상 있다. 정수 와 는 팀원 가 시각 부터 직전까지 당직임을 뜻한다. 두 번째 일정표 뒤에는 마지막 줄로 ======가 나온다.
출력
두 일정표의 차이를 형식으로 출력한다. 여기서 는 팀원 에 대해 두 번째 일정표의 당직 시간에서 첫 번째 일정표의 당직 시간을 뺀 값이다. 출력은 팀원 이름의 사전순으로 정렬하고, 차이가 없는 팀원은 생략한다. 출력되는 차이에는 항상 + 또는 - 부호를 붙인다. 차이가 전혀 없으면 No differences found.를 출력한다.
제한
각 일정표에 대해 다음이 성립한다.
- 팀원 이름 는 영어 소문자로만 이루어진다.