수열 복원

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

요약
길이 M인 모든 연속 부분열이 무작위 순서로 주어질 때, 이를 이어붙여 길이 N인 원래 수열 하나를 복원합니다.
난이도

보통10점 중 7점

유형
해시맵, 그래프, 문자열 매칭, 그리디
정답자
아직 제출이 없습니다

문제

길이가 N인 수열에는 길이가 M인 연속 부분수열이 모두 N-M+1개 있다. 이 연속 부분수열들이 순서와 관계없이 모두 주어질 때, 원래 수열로 가능한 것 하나를 복원하라.

여기서 부분수열은 원래 수열에서 연속한 원소들만을 뜻한다. 예를 들어 {1 2}는 {1 2 3}이나 {3 1 2}의 연속 부분수열이지만, {1 3 2}의 연속 부분수열은 아니다.

입력

첫째 줄에 정수 N과 M이 주어진다. 2 ≤ N ≤ 1,000, 2 ≤ M ≤ N이다.

다음 N-M+1개의 줄에는 길이가 M인 수열이 하나씩 주어진다. 각 수열을 이루는 수의 절댓값은 1,000,000,000을 넘지 않는다.

출력

첫째 줄에 복원한 길이 N의 수열을 공백으로 구분하여 순서대로 출력한다. 답이 여러 개라면 그중 아무 것이나 하나 출력해도 된다. 복원이 불가능한 입력은 주어지지 않는다.

예제1

  1. 예제 1

    입력
    4 2
    3 1
    4 2
    1 4
    
    예상 출력
    3 1 4 2