Cod sursa(job #417812)

Utilizator pykhNeagoe Alexandru pykh Data 14 martie 2010 21:03:49
Problema Dezastru Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include<stdio.h>
const char in[]="dezastru.in", out[]="dezastru.out";
const int N= 1<<5;
float v[N], a[N][N], sol;
int n, k, i, j;

int main()
	{
		freopen(in,"r",stdin);
		freopen(out,"w",stdout);
		scanf("%d%d", &n, &k);
		for(int i = 1 ; i <= n ; ++i)
			scanf("%f ", &v[i]);

		for( i = 0 ; i <= n ; ++i)
			a[ i ][ 0 ] = 1;
		for( i = 1 ; i <= n ; ++i)
			for( j = 1; j <= i ; ++j)
				a[ i ][ j ] = a[ i - 1 ][ j ] + v[ i ] * a[ i - 1][ j - 1];
		sol = a[ n ][ k ];
		for( i = k + 1; i <= n ; ++i) sol /= i;
		for( i = 1 ; i <= n - k ; ++i) sol *= i;
		printf("%f\n", sol);
		return 0;
}