Pagini recente » Cod sursa (job #1715843) | Cod sursa (job #127247) | Cod sursa (job #2669170) | Cod sursa (job #765576) | Cod sursa (job #1240324)
#include <fstream>
#include <algorithm>
#include <iomanip>
using namespace std ;
const int NMAX = 30 ;
ifstream cin("dezastru.in") ;
ofstream cout("dezastru.out") ;
float X[NMAX] ;
float D[NMAX][NMAX] ;
float A[NMAX] ;
short N, K ;
int main()
{
cin >> N ;
cin >> K ;
for(int i = 1 ; i <= N ; ++ i)
cin >> A[i] ;
X[1] = 1 ;
for(int i = 2 ; i <= N ; ++ i)
X[i] = i * X[i - 1] ;
for(int i = 0 ; i <= N ; ++ i)
D[i][0] = 1 ;
for(int i = 1 ; i <= N ; ++ i)
for(int j = 1 ; j <= N ; ++ j)
D[i][j] = D[i - 1][j - 1] * A[i] + D[i - 1][j] ;
cout << setprecision(6) << D[N][K] / (X[N] / (X[K] * X[N - K])) << '\n' ;
cin.close() ;
cout.close() ;
return 0 ;
}