Pagini recente » Cod sursa (job #1734787) | Cod sursa (job #2512579) | Cod sursa (job #1786171) | Cod sursa (job #786059) | Cod sursa (job #39436)
Cod sursa(job #39436)
#include<iomanip.h>
#include<fstream.h>
#define input "dezastru.in"
#define output "dezastru.out"
#define Nmax 30
float p[Nmax],x[Nmax],proc=1,sum=0;
int n,k,i;
void btk(int y,int i,float t)
{
if (y==k)
sum+=t;
else
{
for (;i<n;i++)
{
if (p[i]==0)
{
p[i]++;
t*=x[i];
btk(y+1,i,t);
t/=x[i];
p[i]--;
}
}
}
}
int main()
{
int i;
ifstream fin(input);
ofstream fout(output);
fin>>n>>k;
for (i=0;i<n;i++)
fin>>x[i];
btk(0,0,1);
for(i=k+1;i<=n;i++)proc*=i;
sum/=proc;
fout<<setprecision(7)<<sum<<"\n";
return 0;
}