Pagini recente » Cod sursa (job #1937895) | Cod sursa (job #3187091) | Cod sursa (job #1318533) | Cod sursa (job #1269108) | Cod sursa (job #782132)
Cod sursa(job #782132)
#include <iostream>
#include <iomanip>
#include <fstream>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
int st[30], N, K, nr, i, j;
float v[30], prod, S;
void back(int k)
{
int i;
for(i=1; i<=N; i++)
{
st[k]=i;
for(j=1; j<k; j++)
if(st[j]==st[k])
j=N+2;
if(j!=N+3) if(k==K){
++nr;
prod=1;
for(j=1; j<=k; j++)
prod*=v[st[j]];
S+=prod;
}
else if(k<K) back(k+1);
}
}
int main()
{
fin>>N>>K;
for(i=1; i<=N; i++)
fin>>v[i];
back(1);
fout<<setprecision(6)<<S/nr;
fin.close();
fout.close();
return 0;
}