Pagini recente » Cod sursa (job #3259143) | Cod sursa (job #368785) | Cod sursa (job #3128597) | Cod sursa (job #3162494) | Cod sursa (job #2863286)
#include <bits/stdc++.h>
#define N 104
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
long long n, k;
long long k_fact;
float p[N];
float v[N];
float sol;
void Citire()
{
long long i;
fin >> n >> k;
for( i=1; i<=n; i++ )
fin >> p[i];
}
void Back( long long x, long long a )
{
long long i;
for( i=a + 1; i<=n; i++ )
{
v[x] = p[i];
if( x == k )
{
float prod = 1;
for( long long j = 1; j<=k; j++ )
prod *= v[j];
prod *= k_fact;
sol += prod;
}
else
{
Back( x + 1, i );
}
}
}
void Rezolvare()
{
long long i;
k_fact = 1;
for( i=2; i<=k; i++ )
k_fact *= i;
long long n_fact = 1;
for( i=2; i<=n; i++ )
n_fact *= i;
Back(1, 0);
fout << setprecision(6) << sol / n_fact;
}
int main()
{
Citire();
Rezolvare();
//cout << sizeof( Lee ) / 1024.0 / 1024.0;
return 0;
}