Pagini recente » Cod sursa (job #171507) | Cod sursa (job #1641714) | Cod sursa (job #2951946) | Istoria paginii runda/22_februarie_simulare_oji_2024_clasele_11_12/clasament | Cod sursa (job #201423)
Cod sursa(job #201423)
//#include<iostream>
//using namespace std;
#include<stdio.h>
double prob[26];
int mask[26];
double c = 0;
int k;
int n;
double valoare;
void aranj(int p)
{
if(p >= k)
{
double pr = 1;
for(int i=0;i<k;++i)
pr *= prob[mask[i]];
valoare += pr;
++c;
return;
}
int s=(p==0)?0:(mask[p-1]+1);
for(int i=s;i<n;++i)
{
mask[p] = i;
aranj(p+1);
}
}
int main(void)
{
freopen("dezastru.in", "r", stdin);
freopen("dezastru.out", "w", stdout);
scanf("%d %d\n", &n, &k);
//cin >> n >> k;
for(int i=0;i<n;++i)
{
float a;
scanf("%f", &a);
prob[i] = a;
//cin >> prob[i];
}
aranj(0);
printf("%0.6f\n", valoare/c);//cout << valoare / c << endl;
return 0;
}