Cod sursa(job #170375)

Utilizator GagosGagos Radu Vasile Gagos Data 2 aprilie 2008 18:13:06
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<stdio.h>   
int st[30],n,k,nr;   
float v[30],p;
void prelucrare(void)
{
	int i;
	nr++;
	float r=1;
	for(i=1;i<=k;i++)
		r*=v[st[i]];
	p+=r;
}
bkt(int l)   
{   
    int i;   
    if(l==k+1){   
        prelucrare();
		return;
    }   
    else   
        for(i=st[l-1]+1;i<=n;i++){   
            st[l]=i;   
            bkt(l+1);   
        }   
}   
int main(void)   
{   
    int i;   
    freopen("dezastru.in","r",stdin);   
    freopen("dezastru.out","w",stdout);   
    scanf("%d%d",&n,&k);   
    for(i=1;i<=n;i++)   
        scanf("%f",&v[i]);
	bkt(1);
	printf("%.6f",(float)p/nr);   
    return 0;   
}