페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#2718
채점 보류

격자 암호 (Gridcipher) - SJ 필요 1s 64MB

문제

찬영이는 NxN 크기의 격자에 M개의 구멍을 뚫어서 암호판을 만들었다. 찬영이는 이 암호판을 이용해서 암호화를 한다.

찬영이가 N=5, M=4인 암호판 <표 1>을 이용해서 “찬열아 내일 네 시에 도서관에서 만나자” 라는 문장을 암호화를 하려고 하자. 먼저 표의 왼쪽 위부터 각 글자를 채워 넣는다. 이 때 구멍이 있는 곳은 건너뛰고 글자를 채우게 된다.

찬영이가 암호판에 글자를 채운 모습은 <표 2>와 같아진다.

이제, 찬영이는 암호판의 왼쪽 위부터 차례대로 읽는데, 이때는 세로로 읽게 된다. 그러면 주어진 문장은 “내 서 찬일시관열 에에만아 나 네도서자”로 암호화된다.

찬영이는 실수로 암호판을 잃어버렸다. 하지만 그는 1 ~ N2>-M이 순서대로 나열된 수열을 암호화하면 어떤 수열이 나오는지 알고 있다.

N, M과 찬영이가 알고 있는 순열을 이용해서 암호판을 복원시키자.


입력

첫 번째 줄에는 격자의 크기 N과 구멍의 수 M이 주어진다. (1 ≤ N ≤ 50, 0 ≤ M < N)

두 번째 줄에는 1 ~ N2>-M이 순서대로 나열된 수열을 암호화하면 나오는 수열이 주어진다. 잘못된 순열은 들어오지 않는다.


출력

복원한 격자를 N줄에 걸쳐 출력한다.

구멍은 ‘o’ (소문자 o)로, 그 외 칸은 ‘.’로 나타낸다. 만약 답이 여러 개인 경우 그 중 하나만 출력한다.


예제

5 4

5 9 14 18 1 6 10 15 2 7 11 16 19 3 12 20 4 8 13 17 21
o....

...o.
.....
...o.
.o...
로그인해야 코드를 작성할 수 있어요.