Pagini recente » Cod sursa (job #1439320) | Cod sursa (job #1554236) | Cod sursa (job #2285660) | Cod sursa (job #2944296) | Cod sursa (job #652251)
Cod sursa(job #652251)
#include<iostream>
#include<fstream>
#include<iomanip>
using namespace std;
int n,k,st[26],x;
double s,v[26];
void adauga()
{
int i;
double p;
p=1;
for(i=1;i<=k;i++)
p=p*v[st[i]];
s=s+2*p;
x=x+2;
}
void bktr(int p)
{
int pval;
for(pval=st[p-1]+1;pval<=n;pval++) {
st[p]=pval;
if(p==k)
adauga();
else bktr(p+1);
}
}
int main ()
{
int i;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
f>>n>>k;
for(i=1;i<=n;i++)
f>>v[i];
f.close();
bktr(1);
g<<fixed;
g<<setprecision(6)<<s/x;
g.close();
return 0;
}