아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

사다리꼴

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

요약
별표로 그린 ASCII 그림에서 변이 수평선과 수직선 또는 45도 기울기 선으로 이루어진 사다리꼴을 모두 찾아 넓이별 개수를 출력한다.
난이도

어려움10점 중 8점

유형
구현, 시뮬레이션, 기하, 완전 탐색
정답자
아직 제출이 없습니다

문제

컴퓨터를 써 본 적이 있다면 ASCII 문자로 그린 그림을 본 적이 있을 것이다. 이런 그림은 GIF나 Postscript 그림만큼 예쁘지는 않아도 다루기가 훨씬 쉽다. ASCII 그림은 텍스트 편집기로 간단히 그릴 수 있고, 텍스트만 전달할 수 있는 매체에서도 그래픽 정보를 표현할 수 있다. 이런 그림에서 정보를 추출하는 프로그램은 쓸모가 있을 수 있다.

우리는 별표(*)와 공백으로만 이루어진 단순한 사다리꼴 그림에 관심이 있다. 사다리꼴은 적어도 한 쌍의 변이 평행한 사각형이다. 이 문제에서 다루는 그림은 다음 조건을 만족한다.

  1. 그림의 모든 별표는 어떤 사다리꼴의 변에 속한다.
  2. 사다리꼴의 두 변은 수평이고, 나머지 두 변은 수직이거나 45도 기울어진다.
  3. 모든 변의 길이는 2보다 크다.
  4. 서로 다른 두 사다리꼴은 별표를 공유하지 않는다.
  5. 두 사다리꼴의 변은 맞닿지 않는다. 즉, 한 사다리꼴의 별표는 다른 사다리꼴의 별표 여덟 이웃에 나타나지 않는다. 예를 들어 다음과 같은 배치는 나타나지 않는다.
```




|




  ***

|



****
*  *
****

사다리꼴이 다른 사다리꼴 안에 들어 있을 수도 있다. 예를 들어 다음은 올바른 그림이다.


  •   *
    



  •   *
    


여러분의 임무는 그림에서 사다리꼴을 인식하고 각 사다리꼴의 넓이를 계산하는 것이다. 사다리꼴의 넓이는 네 변 위와 그 안쪽에 있는 문자의 수이며, 안에 들어 있는 사다리꼴의 넓이도 포함한다.

입력

입력에는 여러 그림의 정보가 들어 있다. 각 그림은 정수 h (1 ≤ h ≤ 1000)가 있는 줄로 시작하며, h는 그림의 높이(줄 수)이다. 그림의 각 줄은 별표와 공백으로만 이루어지고 길이가 80 미만이다. 그림의 줄은 길이가 서로 다를 수 있고 끝에 불필요한 공백이 있을 수도 있다. 마지막 그림 뒤에는 정수 0이 입력을 끝낸다.

출력

각 그림마다 두 정수 m과 n을 순서대로 담은 줄을 출력한다. 이는 그림에 넓이가 m인 사다리꼴이 n개 있다는 뜻이다. 한 그림의 출력 줄은 m에 대해 오름차순이어야 하며, 그림에 있는 모든 사다리꼴을 세야 한다.

두 그림의 출력 줄 사이는 하이픈(-) 열 개로 이루어진 한 줄로 구분한다. 이 구분선은 첫 번째 그림의 출력 앞이나 마지막 그림의 출력 뒤에는 나타나지 않는다.

예제1

  1. 예제 1

    입력
    7
    ********
    *      *
    * ***  *
    * * *  *
    * ***  *
    *      *
    ********
    9
    
    ***
    *  *
    *****     *****
              *   *
        ***   *****
       * *
      * *
     ***
    11
        ****                                    *******************
       *   *  *********                        *                  *
      ******  *       *    ****               *  *********        *
              * ***   *   *  *               *  *         *       *
    ***       * *  *  *  ****  *******      *  *  *** ***  *      *
    * *       * ***** *         *   *      *  *   * *  * *  *     *
    ***       *       *          ***      *  *    ***   ***  *    *
              *********                  *  *                 *   *
                                        *  *********************  *
                                       *                          *
                                      *****************************
    0
    
    예상 출력
    9 1
    56 1
    ----------
    12 2
    15 1
    ----------
    9 3
    12 2
    15 2
    63 1
    105 1
    264 1