Pagini recente » Cod sursa (job #1301546) | Cod sursa (job #1410169) | Cod sursa (job #1034676) | Cod sursa (job #1601418) | Cod sursa (job #1905914)
#include <bits/stdc++.h>
using namespace std;
long long nr;
int n,k,a,b,i,j,V[30],K,in;
double v[30],p,s;
int main()
{
ifstream f ("dezastru.in");
ofstream g ("dezastru.out");
f>>n>>K;
for(i=1; i<=n; ++i)
f>>v[i];
if(n-K>K)a=n-K,b=K;
else a=K,b=n-K;
nr=1;
for(j=1,i=a+1; i<=n||j<=b; ++i,++j)
{
if(i<=n) nr*=i;
if(j<=b) nr/=j;
}
for(i=1; i<(1<<n); ++i)
{
k=0;
for(j=0; j<n; ++j)
if(i&(1<<j))V[++k]=j+1;
if(k==K)
{
p=1;
for(in=1; in<=k; ++in)
p*=v[V[in]];
s+=p/nr;
}
}
g<<s;
return 0;
}