만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

꿀벌

면접 대비

시간 제한1초메모리 제한512 MB

요약
n행 m열 육각 격자의 초기 꿀 배치가 주어질 때, 이웃 중 꿀이 있는 칸의 수가 홀수인 칸만 다음 날 꿀이 차는 규칙을 k일 동안 적용한 결과를 출력한다.
난이도

보통10점 중 6점

유형
비트 연산, 시뮬레이션, 행렬, 수학
정답자
아직 제출이 없습니다

문제

꿀벌은 매일 벌집판에 꿀을 저장한다. 벌집판은 정육각형 칸이 행과 열로 놓인 격자다. 밤이 되면 애벌레가 꿀을 모두 먹어 치우므로, 하루가 시작될 때 벌집판은 완전히 비어 있다. 꿀벌이 꿀을 아무 칸에나 넣지는 않는다. 어느 칸에 꿀이 들어가는지는 전날 어느 칸에 꿀이 있었는지로 정해진다. 한 칸은 전날 꿀이 있던 이웃 칸의 개수가 홀수일 때만 꿀을 담고, 그렇지 않으면 비어 있다. 칸 자신은 이웃으로 세지 않는다.

이웃한 두 행은 반 칸씩 엇갈려 놓인다. 1행의 첫 칸은 2행의 첫 칸보다 왼쪽 위에 있다. 그래서 ii행 jj열 칸의 이웃은 다음과 같다.

  • 같은 행의 (i,j−1)(i, j-1)과 (i,j+1)(i, j+1)
  • ii가 홀수면 (i−1,j−1)(i-1, j-1), (i−1,j)(i-1, j), (i+1,j−1)(i+1, j-1), (i+1,j)(i+1, j)
  • ii가 짝수면 (i−1,j)(i-1, j), (i−1,j+1)(i-1, j+1), (i+1,j)(i+1, j), (i+1,j+1)(i+1, j+1)

벌집판을 벗어나는 자리는 이웃이 아니다.

그림은 첫 번째 예제 입력의 벌집판이다.

입력

첫 줄에 자연수 nn, mm, kk가 공백으로 구분되어 주어진다 (2≤n,m≤102 \le n, m \le 10, 1≤k≤263−11 \le k \le 2^{63} - 1). nn은 벌집판의 행 수, mm은 열 수, kk는 지나간 날의 수다.

다음 nn개 줄에 각각 mm개의 문자가 주어진다. '#'은 처음에 그 칸에 꿀이 있다는 뜻이고, '.'은 없다는 뜻이다.

출력

kk일이 지난 뒤 벌집판의 상태를 입력과 같은 형식으로 nn개 줄에 출력한다.

예제2

  1. 예제 1

    입력
    4 4 3
    ....
    ....
    ..#.
    ....
    
    예상 출력
    #...
    .###
    .#..
    #...
    
  2. 예제 2

    입력
    3 10 8
    #.##..#...
    #.##.#....
    ...#..#...
    
    예상 출력
    #..#...##.
    .#.#...###
    #..##.##..