Logo
(追記) (追記ここまで)

26097번 - 효구와 호규 (Hard) 스페셜 저지

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

문제

효구는 $N$개의 행과 $M$개의 열로 이루어진 $N \times M$ 크기의 격자판을 갖고 있다. 각 칸에는 하나의 카드가 놓여 있으며, 카드에는 0ドル$ 또는 1ドル$의 숫자가 적혀 있다.

깔끔한 걸 좋아하는 형 호규는 격자판의 모든 카드를 없애려고 한다. 단, 호규는 아래의 두 가지 행동만을 원하는 만큼 수행할 수 있다.

  • 동일한 숫자를 가진 두 카드가 인접해 있으면 두 카드를 없앤다.
  • 카드 하나를 골라 카드가 없는 인접한 칸으로 옮긴다.

여기서 인접해 있다는 것은 상하좌우 네 방향 중 한 방향으로 인접해 있음을 의미한다.

호규를 도와 모든 카드를 없앨 수 있는지 확인하고, 모두 없앨 수 있다면 그 방법을 아무거나 하나 출력해보자.

입력

첫 번째 줄에는 격자판의 크기를 나타내는 두 정수 $N$과 $M$이 주어진다. (3ドル \le N, M \le 1,000円$)

두 번째 줄부터 $N+1$ 번째 줄까지는 격자판의 정보가 주어진다. 각 줄에는 $M$개의 숫자가 공백으로 구분되어 주어지며, $i+1$번째 줄의 $j$번째 숫자는 $i$행 $j$열에 놓인 카드의 숫자를 의미한다. 단, 각 숫자는 0ドル$ 또는 1ドル$이다.

출력

모든 카드를 없앨 수 없는 경우에는 $-1$을 출력한다.

그렇지 않으면 1ドル$을 출력하고, 그다음 줄부터 줄마다 없애야 하는 두 카드의 처음 위치에 해당하는 행과 열을 없애는 순서대로 출력한다.

가능한 방법이 여러 가지라면 아무거나 하나 출력한다.

제한

예제 입력 1

3 4
0 1 0 1
1 1 0 0
1 0 1 0

예제 출력 1

1
2 1 3 1
1 2 2 2
1 1 3 2
1 3 2 3
1 4 3 3
2 4 3 4

답으로는 여러 가지 방법이 있을 수 있다.

예제 1의 경우에는 1행 2열의 카드와 2행 2열의 카드를 먼저 없앤 후, 2행 1열의 카드와 3행 1열의 카드를 없애고 나머지 카드를 똑같이 없애는 것도 올바른 방법이다.

예제 입력 2

3 3
0 0 0
0 0 0
0 0 0

예제 출력 2

-1

어떤 순서로 없애도 0 카드 하나가 남기 때문에 답은 존재하지 않는다.

힌트

출처

University > 서강대학교 > Sogang Programming Contest > 2022 Sogang Programming Contest > Master (Open) G번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /