시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 (추가 시간 없음) 1024 MB (추가 메모리 없음)84118315724.303%

문제

연세대학교는 2022년부터 인공지능융합대학이라는 단과대를 새로 만들고, 기존 공과대학 소속이었던 컴퓨터과학과를 해당 단과대로 보내버렸다. 하지만 아직 인공지능융합대학 건물이 지어지지 않았기 때문에, 학생들은 여전히 공학관을 사용하고 있다.

이에 공과대학의 다른 학과 학생들이 컴퓨터과학과 학생들을 놀리기 시작했다!

화가 난 컴퓨터과학과 학생들은 바리케이드를 쳐 다른 공과대학 학생들이 접근하지 못하게 하였다. 하지만 실수로 다른 학과의 공간을 침범해 버려, 성난 학생들과 교수님들이 바리케이드를 부숴버렸다!

결국 긴 시간의 협상 끝에, 공과대학 측이 필요한 공간의 크기와 컴퓨터과학과가 필요한 공간의 크기를 미리 제출한 후, 각각 크기를 보장하면서 바리케이드를 치기로 합의하였다.

공학관은 $N \times N$ 크기의 정사각형 모양이고, 바리케이드를 친 이후 컴퓨터과학과의 공간과 공과대학 측의 공간은 연결되어 있지 않아야 하나, 각자의 공간은 모두 연결되어 있어야 한다.

여기서 "연결"이라 함은, 어떤 공간이 상하좌우로 인접해 있는 것을 말한다.

예를 들어, 다음 그림에서 왼쪽의 경우 $A$공간과 $B$공간은 연결되어 있지 않다고 볼 수 있으며, 오른쪽의 경우 $A$공간과 $B$공간이 연결되었다고 볼 수 있다.

또한, 싸움이 나는 것을 방지하기 위해 정확히 제출한 크기만큼의 공간만 제공되어야 한다.

공학관의 크기와 컴퓨터과학과, 공과대학 측이 제출한 공간의 크기가 주어졌을 때, 어떤 식으로 공간을 나눠야 할지 구해보자.

입력

첫 줄에는 $N$ 이 주어진다. $(1 \le N \le 100)$

두 번째 줄에는 컴퓨터과학과가 필요한 공간의 크기 $C$, 다른 공과대학 학과들이 필요한 공간의 크기 $E$가 주어진다. $(1 \le C, E \le N ^ 2)$

출력

주어진 조건을 맞춰 공간을 나눌 수 없다면 -1을 출력한다.

주어진 조건을 맞춰 공간을 분할할 수 있다면, 첫 줄에 1을 출력한다. 또한, 두 번째 줄부터 $N$줄에 걸쳐 공간을 나눈 결과를 출력한다. 여기서 1은 컴퓨터과학과의 공간, 2는 공과대학의 공간이며, 0은 바리케이드다.

예제 입력 1

3
2 4

예제 출력 1

1
222
002
110

예제 입력 2

4
1 10

예제 출력 2

1
2222
2022
2002
0102

예제 입력 3

3
3 4

예제 출력 3

-1

노트

인공지능융합대학의 단과대 건물 소식은 아직 전해지지 않고 있다.

채점 및 기타 정보

  • 100개 이상의 데이터를 맞아야 를 받는다.
  • 예제는 채점하지 않는다.