#include <iostream>
#include <algorithm>
#include <string>
#include <cstring>
#include <vector>
using namespace std;
#define rep(i,a,n) for(int (i)=(a);(i)<(int)(n);(i)++)
#define foreach(c,itr) for(__typeof((c).begin()) itr=(c).begin();itr!=(c).end();itr++)
#define SZ(x) ((int) (x).size())
typedef long long ll;
const int N = 50 + 5;
long long x[N];
long long c[N][N];
int main(){
int n, a, b;
rep(i,0,N) c[i][0] = 1;
rep(i,1,N) rep(j,1,i+1) c[i][j] = c[i-1][j] + c[i-1][j-1];
while(cin >> n >> a >> b) {
rep(i,0,n) cin >> x[i];
sort(x, x+n, greater<int>());
long long sum = 0;
rep(i,0,a) sum += x[i];
int e = 0, d = 0;
rep(i,0,a) if(x[i] == x[a-1]) e++;
rep(i,0,n) if(x[i] == x[a-1]) d++;
//cout << e << " " << d <<endl;
printf("%.15lf\n%lld\n", (double)sum / a, c[d][e]);
}
return 0;
}