고급 작품

여러 도장을 주어진 순서대로 종이에 찍을 때, 나중에 찍은 도장이 이전 내용을 덮는다. 마지막 상태의 종이를 출력한다.

쉬움3시뮬레이션배열구현면접 대비아직 제출이 없습니다시간 제한4초메모리 제한512 MB

문제

준하는 도장을 찍어 그림을 만드는 화가다. 크기와 모양이 서로 다른 도장을 여러 개 준비한 다음, 도화지 위 여러 자리에 차례로 도장을 찍어 작품을 완성한다.

강민이는 준하의 방식을 그대로 따라 하려고 한다. 쓸 도장의 번호와 찍을 좌표가 순서대로 주어질 때, 완성된 그림을 출력하는 프로그램을 작성하자.

도화지는 처음에 아무것도 찍히지 않은 상태다. 도장을 찍으면 그 도장이 덮는 모든 칸이 도장의 같은 자리 글자로 바뀐다. 이미 다른 도장이 찍혀 있던 칸도 나중에 찍은 도장의 글자로 덮인다.

입력

첫째 줄에 도화지의 세로 크기 NN과 가로 크기 MM이 주어진다. (1N,M10001 \le N, M \le 1000)

둘째 줄에 도장의 개수 KK가 주어진다. (1K5001 \le K \le 500) 이어서 1번부터 KK번까지 도장이 순서대로 주어진다. 각 도장은 첫 줄에 세로 크기 HH와 가로 크기 WW가 주어지고 (1H,W5001 \le H, W \le 500), 다음 HH개 줄에 도장의 모양이 한 줄에 WW글자씩 주어진다. 도장의 각 칸은 영문자 또는 숫자이며, 마침표는 도장에 나오지 않는다.

그다음 줄에 도장을 찍는 횟수 QQ가 주어진다. (1Q100001 \le Q \le 10000) 이어지는 QQ개 줄에는 도장 번호 TT와 좌표 YY, XX가 찍는 순서대로 한 줄에 하나씩 주어진다. (1TK1 \le T \le K, 0Y,X10000 \le Y, X \le 1000)

YYXX는 도장이 놓이는 영역에서 가장 왼쪽 위 칸의 좌표다. 도화지의 가장 왼쪽 위 칸이 (0,0)(0, 0)이고 YY는 위에서부터, XX는 왼쪽에서부터 센다. 도장이 도화지를 벗어나는 입력은 주어지지 않는다.

출력

완성된 도화지를 NN개 줄에 출력한다. 각 줄은 MM글자이고, 도장이 한 번도 닿지 않은 칸은 마침표(.)로 출력한다. 도장을 찍은 순서가 결과에 그대로 나타나야 한다.