Pagini recente » Cod sursa (job #1755688) | Cod sursa (job #2850135) | Cod sursa (job #107067) | Cod sursa (job #545714) | Cod sursa (job #2108645)
#include <fstream>
#include<iomanip>
#include<algorithm>
#include<cmath>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int n,k,i,l;
double v[50];
int x[50];
double s=0;
double e=0.000000000001;
void bkt()
{
int k1=1;
x[1]=0;
while(k1)
{
if(x[k1]<n)
{
x[k1]++;
if(k1==k)
{
double prod=1;
for(i=1;i<=k;i++)
{
prod*=v[x[i]];
}
for(int i=2;i<n;i++)
{
prod*=i;
}
for(int i=1;i<=n;i++)
{
prod=(double)prod/i;
}
s+=prod+e;
}
else
{
k1++;
x[k1]=x[k1-1];
}
}
else
{
k1--;
}
}
}
int main()
{
f>>n>>k;
l=n-k;
for(i=1;i<=n;i++)
{
f>>v[i];
}
long long pr=1;
bkt();
g<<setprecision(6)<<fixed;
g<<s;
return 0;
}