객관식 시험은 채점하기 쉬워서 일부 교사들에게 인기가 많습니다. 그중에서도 가장 단순한 형태가 참/거짓, 즉 예/아니오 문제입니다.
당신은 예/아니오 시험을 보고 있습니다. 각 문제마다 두 답 중 어느 쪽이 정답일지에 대한 사전 확률 추정치를 가지고 있습니다. 문제 $i$의 답이 “예”일 확률을 $y_i$, “아니오”일 확률을 $1 - y_i$라고 추정합니다.
만약 문제들이 서로 독립이라면 각 문제에서 $y_i$와 $1 - y_i$ 중 더 큰 쪽을 고르면 됩니다. 하지만 이 교사는 정답이 한쪽으로 치우치는 것을 싫어해서, “예”인 정답의 개수가 항상 $\ell$개 이상 $r$개 이하($\ell \le r$)가 되도록 맞춘다는 사실을 당신은 알고 있습니다.
따라서 “예”라고 답하는 문제의 개수를 $\ell$개 이상 $r$개 이하로 유지하면서, 맞히는 문제 수의 기댓값을 최대로 만드는 답안을 정해야 합니다. 이때 얻을 수 있는 정답 개수의 기댓값의 최댓값을 구하세요.
첫째 줄에 데이터 집합의 개수 $K \ge 1$이 주어집니다. 이어서 $K$개의 데이터 집합이 다음 형식으로 주어집니다.
각 데이터 집합의 첫째 줄에는 세 정수 $\ell \le r \le n$이 주어집니다. 여기서 $n \le 200$은 시험 문제의 총 개수, $\ell$은 “예”로 답할 문제의 최소 개수, $r$은 최대 개수입니다.
그다음 $n$개의 줄에 각 문제 $i$에 대한 소수 $y_i \in [0, 1]$이 한 줄에 하나씩 주어집니다.
각 데이터 집합마다 먼저 Data Set x:를 한 줄에 출력합니다. 여기서 $x$는 데이터 집합의 번호입니다. 그다음 줄에 모든 제약을 만족하면서 맞힐 수 있는 문제 수의 기댓값의 최댓값을 소수점 아래 둘째 자리까지 반올림하여 출력합니다.