만드는 중입니다

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

데이터 스트림 속의 섬

면접 대비

시간 제한1초메모리 제한128 MB

요약
양쪽 이웃보다 높은 연속 구간인 섬이 0으로 시작해 0으로 끝나는 15개 숫자 흐름에 몇 개 들어 있는지 셉니다.
난이도

쉬움10점 중 3점

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

문제

정수 수열 a1,a2,a3,…,ana_1, a_2, a_3, \dots, a_n이 있다. 이 수열의 섬은 연속한 구간 중에서 구간 안의 모든 원소가 구간 바로 앞의 원소보다 크고 구간 바로 뒤의 원소보다도 큰 구간이다. 구간 바로 앞이나 바로 뒤에 원소가 없으면 그 구간은 섬이 아니다.

한 섬이 다른 섬 안에 통째로 들어 있어도 두 섬을 각각 하나로 센다.

0 이상의 정수 15개로 이루어진 수열이 주어진다. 이웃한 두 정수의 차이는 1을 넘지 않는다. 이 수열에 섬이 몇 개 있는지 세는 프로그램을 작성하시오.

입력

첫째 줄에 데이터 세트의 개수 PP가 주어진다. (1≤P≤10001 \le P \le 1000) 각 데이터 세트는 서로 독립이고 처리 방법도 같다.

다음 PP개 줄에 데이터 세트가 한 줄에 하나씩 주어진다. 각 줄은 데이터 세트 번호 KK로 시작하고, 그 뒤에 0 이상의 정수 15개가 공백 하나로 구분되어 놓인다. 이 15개 중 첫 번째 정수와 마지막 정수는 0이다. 각 정수는 바로 앞 정수와의 차이가 1을 넘지 않는다.

출력

각 데이터 세트마다 한 줄씩 출력한다. 데이터 세트 번호 KK를 쓰고, 공백 하나를 둔 다음, 그 수열에 있는 섬의 개수를 쓴다.

예제1

  1. 예제 1

    입력
    4
    1 0 0 1 1 2 2 1 1 0 1 2 2 1 1 0
    2 0 1 2 3 4 3 2 1 2 3 4 3 2 1 0
    3 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
    4 0 1 2 3 4 5 6 7 6 5 4 3 2 1 0
    
    예상 출력
    1 4
    2 7
    3 7
    4 7