만드는 중입니다

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

일본 크로스워드

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

요약
흑백 그림이 주어졌을 때 각 행과 각 열에서 연속된 검은 칸의 길이를 차례로 출력합니다.
난이도

쉬움10점 중 2점

유형
구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

피니스와 퍼브는 직접 신문을 찍기로 했다. 신문은 거의 완성되었고, 마지막에 넣을 퍼즐 하나만 남았다. 두 사람이 고른 것은 일본 크로스워드다.

일본 크로스워드는 n×mn \times m 크기의 흑백 격자 그림을 완성하는 퍼즐이다. 빈 n×mn \times m 격자에서 일부 칸을 검은색으로 칠해야 한다. 각 행의 왼쪽에는 그 행에서 이어지는 검은 칸의 길이를 왼쪽에서 오른쪽 순서로 적은 숫자열이 있다. 마찬가지로 각 열의 위쪽에는 그 열의 검은 칸 길이를 위에서 아래 순서로 적은 숫자열이 있다.

(a) 출제된 일본 크로스워드(b) 풀린 일본 크로스워드

피니스와 퍼브는 퍼즐을 풀었을 때 나올 그림을 골랐다. 그 그림에 맞게 행의 왼쪽과 열의 위쪽에 적을 숫자열을 찾아 주자.

입력

첫째 줄에 그림의 크기를 나타내는 두 정수 nn과 mm이 주어진다 (1≤n,m≤1001 \le n, m \le 100). 다음 nn개 줄에는 각각 mm개의 문자로 그림이 주어진다. 흰색 칸은 ., 검은색 칸은 #으로 나타낸다.

출력

위에서 아래 순서로 크로스워드의 nn개 행을 설명하는 줄을 출력한다. 각 줄은 그 행의 숫자 개수로 시작하고, 이어서 숫자들을 출력한다. 그다음 왼쪽에서 오른쪽 순서로 mm개 열을 같은 형식으로 설명하는 줄을 출력한다. 보기 편하도록 줄바꿈을 추가로 출력해도 된다.

예제1

  1. 예제 1

    입력
    11 8
    ........
    .####...
    .######.
    .##..##.
    .##..##.
    .######.
    .####...
    .##.....
    .##.....
    .##.....
    ........
    
    예상 출력
    0
    1 4
    1 6
    2 2 2
    2 2 2
    1 6
    1 4
    1 2
    1 2
    1 2
    0
    
    0
    1 9
    1 9
    2 2 2
    2 2 2
    1 4
    1 4
    0