만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

12:30PM

시간 제한2초메모리 제한1024 MB

요약
두 체계의 구간 길이와 시각 대응 정보가 주어질 때, 각 체계의 구간 순서를 구하거나 순서가 모호하거나 모순인지 판별합니다.
난이도

보통10점 중 5점

유형
백트래킹, 완전 탐색, 시뮬레이션
정답자
아직 제출이 없습니다

문제

사람들은 보통 24시간제를 쓰는 나라에서 왔다가 12시간제(AM, PM)를 쓰는 나라에 가면 자주 헷갈린다. 이 방식에는 직관에 어긋나는 부분이 몇 가지 있다. 예를 들어 12:00PM은 정오를 뜻하며, 11:59AM 바로 다음에 온다. 그런데 알데바란 계의 한 행성 주민들은 이보다 훨씬 복잡하고 불편한 시간 표기법을 쓴다.

이 행성에서는 시간 표기법을 두 가지 쓴다. 각 체계에서 nn시간짜리 하루는 길이가 서로 다른 여러 구간으로 나뉘고, 각 구간 안에서 시각은 독립적으로 센다.

알데 체계에서는 하루가 mm개의 구간으로 나뉜다. 첫 번째 구간은 a1a_1시간이며 AA로 표기하고, 두 번째 구간은 a2a_2시간이며 AB로 표기한다. 이런 식으로 mm번째 구간은 ama_m시간이며 A$로 표기한다. 여기서 $는 라틴 알파벳의 mm번째 글자다.

바란 체계에서는 하루가 kk개의 구간으로 나뉜다. 첫 번째 구간은 b1b_1시간이며 BA로 표기하고, 두 번째 구간은 b2b_2시간이며 BB로 표기한다. 이런 식으로 kk번째 구간은 bkb_k시간이며 B#로 표기한다. 여기서 #는 라틴 알파벳의 kk번째 글자다.

다만 문제가 하나 있다. 각 체계에서 하루는 정해진 길이의 구간들로 나뉘지만, 구간의 순서가 날마다 고정되어 있지는 않다. 예를 들어 어떤 날 알데 체계의 구간은 3, 2, 1 순서로 나오고, 바란 체계의 구간은 (구간이 각각 3개와 4개일 때) 1, 4, 2, 3 순서로 나올 수 있다.

어느 날 이 행성 주민의 일기장을 입수했다. 일기장에는 두 시간 체계에서 흥미로운 시점들이 여러 번 기록되어 있어서, 두 체계의 시각이 어떻게 대응하는지 일부 정보를 알 수 있다. 그날 두 체계에서 구간들의 순서를 알아낼 수 있겠는가?

입력

첫 번째 줄에 행성에서 하루의 시간 수 nn이 주어진다(1≤n≤991 \le n \le 99).

두 번째 줄에는 mm과 이어서 a1,a2,…,ama_1, a_2, \ldots, a_m이 주어진다(1≤m≤81 \le m \le 8, 1≤ai≤n1 \le a_i \le n, 모든 aia_i의 합은 nn이다).

세 번째 줄에는 kk와 이어서 b1,b2,…,bkb_1, b_2, \ldots, b_k가 주어진다(1≤k≤81 \le k \le 8, 1≤bi≤n1 \le b_i \le n, 모든 bib_i의 합은 nn이다).

네 번째 줄에는 두 시간 체계 사이에 알려진 관계의 개수 ll이 주어진다(0≤l≤1000 \le l \le 100). 다음 ll개 줄에 관계가 하나씩 주어진다. 각 시각은 XX:YYCC 형식이며, XX는 시, YY는 분, CC는 구간 이름이다. XX는 00부터 98까지이며, 구간의 첫 시간은 00:00AA, 00:01AA 식으로 표기한다. YY는 00부터 59까지다. CC는 AA부터 A$까지, 또는 BA부터 B#까지다.

출력

구간 순서를 한 가지로 정할 수 없으면 Ambiguous를 출력한다. 주어진 관계를 모두 만족하는 순서가 하나도 없으면 Inconsistent를 출력한다. 그 외에는 예시와 같은 형식으로 두 체계의 구간 순서를 출력한다. 첫 줄은 Alde system: 뒤에 알데 체계의 구간 번호를 공백으로 구분해 적고, 둘째 줄은 Baran system: 뒤에 바란 체계의 구간 번호를 공백으로 구분해 적는다.

힌트

첫 번째 입력 예시에서 알데 체계의 14시간짜리 구간이 첫 번째였다면, 06:30AA는 06:30BA(또는 06:30BB)에 대응했을 것이다. 따라서 10시간짜리 구간이 첫 번째다. 그러므로 바란 체계에서는 BB 구간이 첫 번째로 온다.

예제3

  1. 예제 1

    입력
    24
    2 14 10
    2 12 12
    1
    06:30AA=04:30BA
    
    예상 출력
    Alde system: 2 1
    Baran system: 2 1
    
  2. 예제 2

    입력
    24
    2 12 12
    2 12 12
    1
    11:30AA=11:30BB
    
    예상 출력
    Ambiguous
    
  3. 예제 3

    입력
    24
    2 12 12
    2 12 12
    1
    11:30AA=11:31BB
    
    예상 출력
    Inconsistent