두더지굴
골드는 땅속의 굴이 모두 연결되어 있으면 이 굴은 한 마리의 두더지가 사는 집이라는 사실을 발견하였다.
골드는 뒷산에 사는 두더지가 모두 몇 마리인지 궁금해졌다. 골드는 특수 장비를 이용하여 뒷산의 두더지 굴을 모두 나타낸 지도를 만들 수 있었다.
이 지도는 정사각형 모양이며 가로, 세로 영역을 0 또는 1로 표현한다. 0은 땅이고 1은 두더지 굴을 나타낸다. 1이 상하좌우로 연결되어 있으면 한 마리의 두더지가 사는 집으로 정의할 수 있다.
특수촬영 사진 데이터를 입력받아 총 두더지 굴의 수를 출력하고, 각 두더지 굴의 크기를 내림차순으로 정렬하여 출력하는 프로그램을 작성하시오.
입력
첫 번째 줄에 지도의 가로, 세로 크기를 나타내는 정수 \(n\)이 입력된다.
두 번째 줄부터 \(n\)줄에 걸쳐서 \(n\)개의 0과 1이 공백으로 구분되어 입력된다.
출력
첫째 줄에 총 두더지 굴의 수를 출력한다.
둘째 줄부터 각 두더지 굴의 크기를 내림차순으로 한 줄에 하나씩 출력한다.
만약 두더지 굴이 하나도 존재하지 않는다면 첫째 줄에 0만 출력한다.
제한사항
- \(3 \le n \le 30\) (\(n\)은 자연수)
- 지도의 각 원소는 0 또는 1로만 이루어져 있다.
예제 입력 1
7
0 1 1 0 1 0 0
0 1 1 0 1 0 1
1 1 1 0 1 0 1
0 0 0 0 1 1 1
0 1 0 0 0 0 0
0 1 1 1 1 1 0
0 1 1 1 0 0 0
예제 출력 1
3
9
8
7
예제 입력 2
3
1 0 1
1 0 0
0 0 1
예제 출력 2
3
2
1
1
코멘트