Pagini recente » Cod sursa (job #1854904) | Cod sursa (job #485149) | Cod sursa (job #679681) | Clasamentul arhivei de probleme | Cod sursa (job #887710)
Cod sursa(job #887710)
#include<fstream>
#include<iomanip>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
const int Eps = 0.000001;
int Sol[26]; int N; int K; double Sum; double V[30]; double A = 1;double Comb;
void Back(int k){
if(k - 1 == K)
Sum += A, Comb++;
else
for(int i = Sol[k - 1] + 1; i <= N; ++i){
Sol[k] = i; A *= V[i]; Back(k + 1);A /= V[i];
}
}
void Read() {
fin >> N >> K;
for(int i = 1 ;i <= N; ++i) fin >> V[i];
}
void Print(){
fout << fixed << setprecision(6) << Sum/Comb;
}
int main(){
Read();
Back(1); Print();
return 0;
}