Cod sursa(job #1198151)
| Utilizator | Data | 14 iunie 2014 18:32:21 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.42 kb |
#include <fstream>
#include <iomanip>
using namespace std;
int a[30],nr=0,k,n;
double p[30],ans;
void comb(int x,double s){
int i;
if(x==k+1){
ans+=s;
nr++;
return;
}
for(i=a[x-1]+1;i<=n;i++){
a[x]=i;
comb(x+1,p[a[x]]*s);
}
}
int main(){
ifstream f("dezastru.in");
ofstream g("dezastru.out");
f >> n >> k;
for(int i=1;i<=n;i++)
f >> p[i];
comb(1,1);
g << fixed << setprecision(6) << ans/nr;
}
