Submission #2239619
Source Code Expand
#include<bits/stdc++.h>
#ifdef LOCAL
#include "../dump.hpp"
#else
#define dump(...)
#endif
using namespace std;
#define rep(i,n) for(int i=0,i##_len=(n);i<i##_len;i++)
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define ROF(i,a,b) for(int i=(a)-1;i>=(b);i--)
#define all(a) (a).begin(),(a).end()
#define rall(a) (a).rbegin(),(a).rend() //sortで大きい順
#define UNIQUE(v) v.erase(unique(all(v)),v.end())
#define SUM(a) accumulate(all(a),0)
#define sz(x) ((int)(x).size())
#define pb push_back
#define fst first
#define snd second
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<string> vs;
typedef pair<int,int> pii;
typedef long long ll;
typedef vector<ll> vll;
typedef vector<vll> vvll;
int main(){
int n,a,b; cin >> n >> a >> b;
vll v(n); rep(i,n) cin >> v[i];
sort(rall(v));
double ave = (double)accumulate(v.begin(),v.begin()+a,0ll) / a;
printf("%.10f\n",ave);
int x = 0; rep(i,n) if(v[a-1] == v[i]) x++;
vvll C(x+1);
C[0].pb(1);
FOR(i,1,x+1){
C[i].resize(i+1);
rep(j,i) rep(k,2)
C[i][j+k] += C[i-1][j];
}
//dump(x,C);
if(v[0] != v[a-1]){
int y = 0; rep(i,a) if(v[a-1] == v[i]) y++;
cout << C[x][y] << endl;
}else{
ll ans = 0;
FOR(i,a,min(x+1,b+1)) ans += C[x][i];
cout << ans << endl;
}
}
Submission Info
Submission Time |
|
Task |
D - Maximum Average Sets |
User |
kimitsu_emt |
Language |
C++14 (GCC 5.4.1) |
Score |
400 |
Code Size |
1341 Byte |
Status |
AC |
Exec Time |
1 ms |
Memory |
256 KB |
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
400 / 400 |
Status |
|
|
Set Name |
Test Cases |
Sample |
sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt |
All |
sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
Case Name |
Status |
Exec Time |
Memory |
sample_01.txt |
AC |
1 ms |
256 KB |
sample_02.txt |
AC |
1 ms |
256 KB |
sample_03.txt |
AC |
1 ms |
256 KB |
sample_04.txt |
AC |
1 ms |
256 KB |
subtask_1_1.txt |
AC |
1 ms |
256 KB |
subtask_1_10.txt |
AC |
1 ms |
256 KB |
subtask_1_11.txt |
AC |
1 ms |
256 KB |
subtask_1_12.txt |
AC |
1 ms |
256 KB |
subtask_1_13.txt |
AC |
1 ms |
256 KB |
subtask_1_14.txt |
AC |
1 ms |
256 KB |
subtask_1_15.txt |
AC |
1 ms |
256 KB |
subtask_1_2.txt |
AC |
1 ms |
256 KB |
subtask_1_3.txt |
AC |
1 ms |
256 KB |
subtask_1_4.txt |
AC |
1 ms |
256 KB |
subtask_1_5.txt |
AC |
1 ms |
256 KB |
subtask_1_6.txt |
AC |
1 ms |
256 KB |
subtask_1_7.txt |
AC |
1 ms |
256 KB |
subtask_1_8.txt |
AC |
1 ms |
256 KB |
subtask_1_9.txt |
AC |
1 ms |
256 KB |