Cod sursa(job #2568285)
| Utilizator | Data | 3 martie 2020 21:50:46 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 10 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.67 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int nr,n,k,nrperm,i;
bool w[100];
float v[100],rez[100],s,p;
void permuta(int nr)
{
int i;
if(nr<=n)
{
for(i=1; i<=n; i++)
{
if(w[i]==0)
{ w[i]=1;
rez[nr]=v[i];
permuta(nr+1);
w[i]=0;
}
}
}
else
{float p=1;
for(i=1; i<=k; i++)p=p*rez[i];
s=s+p;
nrperm++;
}
}
int main()
{
f>>n>>k;
for(i=1; i<=n; i++)
f>>v[i];
permuta(1);
g<<fixed<<setprecision(6)<<s/nrperm;
}
