설명
\(1\) 이상 \(N\) 이하의 정수 \(N\)개를 포함하는 정수 수열 \(A\)를 생각하자. 각 정수는 수열에 정확히 한 번씩 나타난다.
\(A\)의 부분 수열이란 \(A\)의 앞에서 몇 개(없을 수도 있다)의 수를 제거하고, 그 다음 \(A\)의 뒤에서 몇 개를 제거하여 얻는 수열이다.
길이가 홀수이면서 중앙값이 \(B\)인 \(A\)의 서로 다른 부분 수열이 몇 개인지 계산하시오. 수열의 중앙값이란 수열을 정렬했을 때 한가운데에 있는 원소이다. 예를 들어 수열 \(\{5, 1, 3\}\)의 중앙값은 \(3\)이다.
제약
입력 형식
첫째 줄에 두 정수 \(N\) (\(1 \le N \le 100\,000\))과 \(B\) (\(1 \le B \le N\))가 주어진다.
둘째 줄에 공백으로 구분된 정수 \(N\)개가 주어진다. 수열 \(A\)의 원소이다.
출력 형식
중앙값이 \(B\)인 \(A\)의 부분 수열의 개수를 출력한다.
서브태스크
| 서브태스크 | 점수 | 설명 |
|---|---|---|
Subtask 1 | 70점 |
예제 1
입력
5 4
1 2 3 4 5출력
2예제 2
입력
6 3
1 2 4 5 6 3출력
1예제 3
입력
7 4
5 7 2 4 3 1 6출력
4문제 정보
태그