Cod sursa(job #940451)
Utilizator | Lup Ionut rudarel | Data | 16 aprilie 2013 11:31:57 |
---|---|---|---|
Problema | Dezastru | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.67 kb |
#include <fstream>
using namespace std;
double a[26], A[26][26], C[26][26];
int n, k, i, j;
int main()
{
ifstream f("dezastru.in");
ofstream g("dezastru.out");
f>>n>>k;
for(i=1; i<=n; i++)
{
A[i][0]=1;
f>>a[i];
}
A[0][0]=1;
for(i=1; i<=n; i++)
{
for(j=1; j<=k; j++)
{
A[i][j]=A[i-1][j]+A[i-1][j-1]*a[i];
}
}
for(i=1; i<=n; i++)
{
C[i][1]=i;
C[i][n-1]=i;
C[i][n]=1;
for(j=2; j<n-1; j++)
{
C[i][j]=C[i-1][j]+C[i-1][j-1];
}
}
g.precision(7);
g<<fixed<<(double)A[n][k]/C[n][k];
}