만드는 중입니다

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

오션 뷰 (스몰)

면접 대비

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

요약
호수 쪽부터 남은 집 높이가 한 집씩 커지도록 철거할 집을 가장 적게 고릅니다.
난이도

쉬움10점 중 3점

유형
완전 탐색, 배열
정답자
아직 제출이 없습니다

문제

오션 뷰는 작은 호수 가장자리에 있는 마을이다. 마을에는 길이 하나뿐이고, 서쪽 호수에서 동쪽 언덕 쪽으로 뻗어 있다. 집은 모두 이 길의 한쪽에만 늘어서 있으며, 호수 쪽 끝의 1번부터 언덕 아래의 NN번까지 번호가 붙어 있다.

주민은 모두 호수를 보고 싶어 한다. 그런데 앞쪽 집이 뒤쪽 집의 시야를 가리기도 한다. A<BA < B이면서 AA번 집의 높이가 BB번 집의 높이보다 크거나 같으면, AA번 집이 BB번 집의 시야를 가린다.

마을의 통치자는 남아 있는 집이 모두 호수를 볼 수 있도록 집 몇 채를 부수기로 했다. 다만 너무 많이 부수면 주민의 반발이 크므로, 부수는 집의 수를 최소로 하려고 한다.

남은 집이 모두 호수를 볼 수 있게 하려면 최소 몇 채를 부수어야 하는지 구하여라.

입력

첫 줄에 테스트 케이스의 수 TT가 주어진다. 이어서 TT개의 테스트 케이스가 주어지며, 각 테스트 케이스는 두 줄이다. 첫 줄에는 집의 수 NN이 주어지고, 다음 줄에는 서쪽부터 동쪽 순서로 각 집의 높이가 공백 하나로 구분되어 주어진다.

제한

  • 1≤T≤1001 \le T \le 100
  • 1≤N≤501 \le N \le 50
  • 각 집의 높이는 11 이상 10001000 이하의 정수이다.
  • 답은 항상 44 이하이다.

출력

각 테스트 케이스마다 Case #x: y 형식으로 한 줄씩 출력한다. xx는 1부터 시작하는 테스트 케이스 번호이고, yy는 부수어야 하는 집의 최소 개수이다.

힌트

예제의 첫 번째 케이스는 답을 만드는 방법이 여러 가지다. 1번 집을 남기고 나머지 세 채 중 아무 두 채나 부수면 된다. 가장 높은 집 하나만 부수는 것으로는 부족한데, 3번 집이 여전히 4번 집의 시야를 가리기 때문이다.

두 번째 케이스는 한 채도 부술 필요가 없다. 모든 주민이 이미 호수를 볼 수 있다.

세 번째 케이스는 한 채만 남기고 모두 부수어야 한다. 어느 집을 남기든 결과는 같다.

네 번째 케이스에서는 가장 낮은 집의 주민만 호수를 보지 못한다. 그 서쪽에 있는 세 채를 부수어도 되지만, 그 집 한 채만 부수는 편이 더 낫다.

예제4

  1. 예제 1

    입력
    4
    4
    1 4 3 3
    5
    3 4 6 7 10
    4
    4 3 2 1
    5
    4 5 6 1 7
    
    
    예상 출력
    Case #1: 2
    Case #2: 0
    Case #3: 3
    Case #4: 1
    
  2. 예제 2

    입력
    1
    1
    7
    
    예상 출력
    Case #1: 0
    
  3. 예제 3

    입력
    3
    2
    5 5
    5
    1000 1000 1000 1000 1000
    3
    1 1 1
    
    예상 출력
    Case #1: 1
    Case #2: 4
    Case #3: 2
    
  4. 예제 4

    입력
    3
    5
    5 4 3 2 1
    2
    2 1
    3
    1000 1 1000
    
    예상 출력
    Case #1: 4
    Case #2: 1
    Case #3: 1