만드는 중입니다

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

악몽의 형제

면접 대비

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

요약
길이 M인 문자열 S에 대한 힌트 N개가 주어지고 그중 최대 하나가 거짓입니다. 가능한 S가 하나면 출력하고, 없으면 -1, 여러 개면 -2를 출력합니다.
난이도

보통10점 중 5점

유형
완전 탐색, 문자열, 구현
정답자
아직 제출이 없습니다

문제

형제가 길이가 MM인 문자열 SS를 가지고 있다. 인덱스는 11부터 MM까지이다. 당신은 SS가 정확히 무엇인지 알고 싶다. 이를 돕기 위해 형제가 힌트 NN개를 준다. 힌트 ii는 정수 XiX_i와 문자열 TiT_i로 이루어지며, TiT_i가 SS의 XiX_i번째 위치에서 시작하는 부분 문자열로 나타난다는 뜻이다. 모든 힌트는 서로 다르다. 즉, i≠ji \ne j이면서 Xi=XjX_i = X_j이고 Ti=TjT_i = T_j인 힌트 쌍은 없다.

이 형제는 장난을 좋아하는 것으로 알려져 있다. 힌트 NN개 중 거짓인 것은 많아야 하나라고 말하지만, 어느 것이 거짓인지는 말하지 않는다.

문자열 SS가 가능한 해인 것은, 참이라고 가정한 힌트 N−1N - 1개 이상의 집합이 존재하여 그 집합의 모든 힌트를 만족하는 문자열이 SS뿐일 때이다.

가능한 해를 하나 찾아야 한다. 가능한 해가 없으면 −1-1을, 가능한 해가 둘 이상이면 −2-2를 출력한다.

입력

첫 줄에 정수 NN과 MM이 주어진다(1≤N≤1001 \le N \le 100, 1≤M≤1001 \le M \le 100). 각각 힌트의 개수와 문자열의 길이이다. 이어지는 NN개 줄에는 정수 XiX_i와 문자열 TiT_i가 한 줄씩 주어진다(1≤Xi1 \le X_i, 1≤∣Ti∣1 \le |T_i|, Xi+∣Ti∣−1≤MX_i + |T_i| - 1 \le M). 문자열 TiT_i는 대문자로만 이루어진다. 같은 XiX_i와 같은 TiT_i를 가진 힌트 쌍은 없다.

출력

가능한 해가 정확히 하나면 문자열 SS를 한 줄에 출력한다. 가능한 해가 없으면 −1-1을 한 줄에 출력한다. 가능한 해가 둘 이상이면 −2-2를 한 줄에 출력한다.

예제4

  1. 예제 1

    입력
    3 11
    5 JAKARTA
    1 ICPC
    3 BINUS
    
    예상 출력
    ICPCJAKARTA
    
  2. 예제 2

    입력
    3 9
    6 EX
    8 AM
    1 FINAL
    
    예상 출력
    FINALEXAM
    
  3. 예제 3

    입력
    3 8
    1 GRAD
    5 UAL
    6 ATE
    
    예상 출력
    -1
    
  4. 예제 4

    입력
    3 5
    1 BIN
    4 US
    4 OM
    
    예상 출력
    -2