BCD 대회에는 개의 문제가 순서대로 놓여 있다. 현재 번째 문제의 난이도는 이며, 모든 난이도는 이상 이하의 정수이다.
실력이 인 참가자는 다음 규칙에 따라 문제를 푼다.
따라서 첫 번째 문제부터 너무 어려우면 아무 문제도 해결하지 못한다. 반대로 모든 문제의 난이도가 실력 이하이면 개를 모두 해결한다.
각 참가자에 대해 다음 두 경우의 해결한 문제 수를 비교하려고 한다.
두 경우의 해결한 문제 수가 다르면, 그 참가자를 루나리티식 난이도배치 피해자라고 부른다. 난이도가 같은 문제의 정렬 순서는 결과에 영향을 주지 않는다.
예를 들어 난이도가 이고 참가자의 실력이 라면, 현재 순서에서는 앞의 두 문제를 해결한 뒤 난이도 인 문제에서 멈춘다. 그 뒤의 난이도 인 문제는 해결하지 못한다. 하지만 오름차순으로 배열한 에서는 세 문제를 해결한다. 따라서 실력이 인 참가자는 피해자이다.
실력이 인 참가자가 각각 한 명씩 있다. 이들 중 루나리티식 난이도배치 피해자의 수를 구하여라.
입력은 다음과 같은 형식으로 주어진다.
각 테스트 케이스마다 루나리티식 난이도배치 피해자의 수를 한 줄에 출력한다.
오름차순으로 배열하면 난이도는 가 된다.
첫째 줄에 테스트 케이스의 개수 가 주어진다. 각 테스트 케이스는 다음 형식으로 주어진다.
각 테스트 케이스의 첫째 줄에 문제의 개수 과 참가자 실력의 최댓값 이 공백으로 구분되어 주어진다.
둘째 줄에 현재 순서의 문제 난이도 이 공백으로 구분되어 주어진다.
| 2 | 22 |
|
| 3 | 29 |
|
| 4 | 36 | 추가적인 제약이 없다. |
따라서 피해자는 실력이 인 참가자와 인 참가자, 총 명이다.
번째 테스트 케이스: 문제들이 이미 난이도의 오름차순으로 놓여 있다. 각 참가자가 두 경우에 해결한 문제 수가 같으므로 피해자가 없다.
번째 테스트 케이스: 실력이 이상 이하인 참가자는 현재 순서에서 첫 번째 문제에 막혀 개를 해결하지만, 정렬하면 난이도 인 두 문제를 해결한다. 이들은 각각 한 명의 피해자로 세므로 정답은 이다. 실력이 인 참가자는 두 경우 모두 모든 문제를 해결한다.
번째 테스트 케이스: 참가자 한 명이 유일한 문제를 해결하며, 정렬해도 달라지는 것이 없다.