냉장고 자물쇠

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

한 열쇠 수리공이 냉장고 문에 달린 화면에 표시된 특이한 자물쇠를 열어 달라는 부탁을 받았다.

이 자물쇠는 $K$개의 동심원(고리)으로 이루어져 있다. 각 고리에는 양의 정수 여러 개가 표시되어 있다. 각 고리에서 정확히 하나씩 수를 골라, 고른 $K$개의 수가 $K$개의 단서를 모두 만족시키면 문이 열린다.

고리를 바깥쪽부터 $R_1$, 안쪽으로 갈수록 $R_2, \ldots, R_K$로 번호를 매기고, $R_i$는 고리 $i$에서 고른 수도 함께 나타낸다고 하자. 각 단서는 이 고른 값들에 대한 일차방정식이다.

$$c_1 R_1 + c_2 R_2 + \cdots + c_K R_K = b$$

각 단서는 이미 정수 계수 $c_1, c_2, \ldots, c_K$와 우변 $b$로 분해되어 주어지며, 바깥 고리부터 안쪽 고리 순서로 나열된다. 예를 들어 (고리가 3개일 때) "바깥 고리에서 가운데 고리의 두 배를 뺀 값이 $0$이다"라는 단서는 계수 줄 1 -2 0 = 0으로 표현된다.

계수는 음수, $0$, 양수 모두 될 수 있다. 단서들은 언제나 자물쇠를 여는 선택을 정확히 하나로 확정한다.

고리들과 단서들을 읽어, 자물쇠를 여는 유일한 선택을 바깥 고리부터 안쪽 고리 순서로 출력하여라.

입력

입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스는 다음과 같이 주어진다.

  • 고리의 개수(이자 단서의 개수)인 정수 $K$가 한 줄에 주어진다. 이때 $3 \le K \le 9$이다.
  • 이어서 $K$줄에 걸쳐, 바깥 고리부터 안쪽 고리까지 각 고리에 표시된 수들이 한 줄에 하나의 고리씩 공백으로 구분되어 주어진다. 한 고리에는 $3$개 이상 $49$개 이하의 수가 표시되며, 고리마다 개수가 다를 수 있다.
  • 이어서 $K$줄에 걸쳐 단서가 한 줄에 하나씩 주어진다. 각 단서 줄은 $K$개의 정수 계수, 그다음 토큰 =, 그다음 정수 우변으로 이루어진다: c_1 c_2 ... c_K = b.

고리에 표시되는 각 수는 $1$ 이상 $99$ 이하이다. 한 줄에 0 하나만 있으면 입력의 끝을 뜻하며 처리하지 않는다.

출력

각 테스트 케이스마다, 고른 수들을 바깥 고리부터 안쪽 고리 순서로 공백 하나로 구분하여 한 줄에 출력한다.