만드는 중입니다

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

기지국 탑

시간 제한2초메모리 제한1024 MB

요약
격자에 있는 모든 타워를 포함하는 가장 작은 연결된 행·열 볼록 칸 집합을 출력합니다.
난이도

보통10점 중 6점

유형
기하, 구현
정답자
아직 제출이 없습니다

문제

Ричмонд Валентайn은 자신의 회사 SIM 카드에 신호를 보내려고 기지국 탑을 세웠다. 이제 그는 탑들이 덮는 영역을 찾고 싶어 한다.

지구 지도는 nn행 mm열의 격자 표이다. 각 탑은 격자 칸 하나를 정확히 차지한다. 칸들의 집합은, 집합 안의 임의의 칸에서 칸의 변을 따라 집합 안의 칸만 지나 집합의 다른 모든 칸에 갈 수 있으면 연결되어 있다고 한다. 연결된 집합이 모든 수직선과 수평선을 최대 하나의 연속된 구간에서 자르면 격자 볼록이라고 한다. 발렌타인은 자신이 세운 모든 탑을 포함하는 최소의 연결된 격자 볼록 도형이 탑들이 덮는 영역이라고 본다. 이 영역을 구하라.

입력

첫 줄에 정수 nn과 mm이 주어진다 (1≤n,m≤5001 \le n, m \le 500). 다음 nn줄에는 각각 mm개의 문자로 지도가 주어진다. ii행 jj열에 탑이 있으면 ii번째 줄의 jj번째 문자는 *이고, 없으면 .이다.

출력

nn줄에 걸쳐 각각 mm개의 문자를 출력한다. ii행 jj열이 덮인 영역에 속하면 ii번째 줄의 jj번째 문자는 *이고, 그렇지 않으면 .이다. 답이 여러 개이면 아무거나 출력한다.

예제1

  1. 예제 1

    입력
    3 3
    ***
    *.*
    *.*
    
    예상 출력
    ***
    ***
    ***