Cod sursa(job #1806084)
| Utilizator | Data | 14 noiembrie 2016 20:20:55 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int n,k,i,j;
double ans,dp[50][50];
int main()
{
f>>n>>k;
dp[0][0] = 1;
for(i = 1; i <= n; ++i)
{
double x;
f>>x;
for(j = dp[i][0] = 1; j <= i; ++j)
dp[i][j] = dp[i-1][j] + x*dp[i-1][j-1];
}
ans = dp[n][k];
for(i = k+1; i <= n; ++i)
ans/=i;
for(i = 1; i <= n-k; ++i)
ans*=i;
g<<ans;
return 0;
}
