시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
3 초 | 512 MB | 108 | 37 | 27 | 52.941% |
여러분은 낱말 찾기 퍼즐을 해 보았는가? 낱말 찾기 퍼즐은 각 칸에 글자가 하나씩 쓰여 있는 일정 크기의 격자에서 연속하는 몇 개의 칸이 이루고 있는 단어를 찾는 퍼즐이다.
영어로 된 낱말 퍼즐의 예시.
낱말 찾기 퍼즐은 퍼즐 하나에서 나올 수 있는 단어의 수가 정해져 있다. 옆 동네 윤우가 41기 학생들에게 공룡 게임을 홍보하는 것을 본 지호는, 공룡 게임에 꿀리지 않을 만큼 재미있는 낱말 찾기 퍼즐을 만들기로 했다. 낱말 찾기 퍼즐을 더 재미있게 만들기 위해서, 지호는 다음과 같은 방법을 생각해 냈다. 퍼즐에서 단어를 더 이상 찾지 못하면, 퍼즐을 가로세로로 잘라 네 조각으로 나눈 뒤 각 조각을 180도 회전시켜서 다시 붙이는 것이다. 이렇게 하면, 한 퍼즐에서 찾을 수 있는 단어의 수가 엄청 많아질 것이다. 지호는 가지고 있던 낱말 찾기 퍼즐을 다 가위로 열심히 자르며 새로운 단어를 찾았다. 그런데, 문제가 생겼다. 지호는 퍼즐을 자를 때마다 가위질하는 것이 귀찮아졌다!
그러나 여기서 포기할 지호가 아니다. 옆 동네 공룡 게임도 컴퓨터로 하는 게임이니까, 낱말 찾기 게임도 컴퓨터로 즐기면 되는 것 아니겠는가? 지호를 도와 몇 번이고 퍼즐을 잘라도 퍼즐이 어떻게 변하는지 구해내는 프로그램을 작성해 보자.
여러분에게는 $Q$개의 질의가 주어질 것이다. 주어지는 질의에 따라서 퍼즐을 잘라서 돌리는 작업을 실행하거나 퍼즐의 상태를 출력하는 프로그램을 작성하여라.
첫째 줄에 정수 $N$, $M$, $Q$가 주어진다. $N$과 $M$은 각각 퍼즐의 행과 열의 개수, $Q$는 주어지는 질의의 개수이다.
둘째 줄부터 $N$개의 줄에 걸쳐 초기 상태의 퍼즐이 주어진다. 각 줄에서는 퍼즐의 각 칸을 이루는 문자 $M$개가 문자열의 형태로 주어진다.
그 다음 줄부터 Q개의 질의가 주어진다. 각 질의는 다음과 같다.
2번 쿼리가 주어질 때마다 N개의 줄에 걸쳐 현재 상태의 퍼즐을 출력한다. 입력 조건과 같이, 각 행의 문자는 길이 $M$의 문자열의 형태로 출력한다.
번호 | 배점 | 제한 |
---|---|---|
1 | 20 | $Q \leq 50$ |
2 | 80 | 추가 제한 조건이 없다. |
4 4 4 pfdi siam tlcs ripy 1 2 2 2 1 1 3 2
isma fpid iryp ltsc msia stlc yrip ipfd
High School > 경기과학고등학교 > 2023 IamCoder Qualification Test D번