Pagini recente » Cod sursa (job #848274) | Cod sursa (job #1040278) | Cod sursa (job #1541876) | Cod sursa (job #3036713) | Cod sursa (job #37719)
Cod sursa(job #37719)
#include<stdio.h>
int c[26];
int main()
{
float m=0.0,p,a[26];
int i,n,k,x,ok=1,f=0,t;
FILE *fin,*fout;
fin=fopen("dezastru.in","r");
fout=fopen("dezastru.out","w");
fscanf(fin,"%d%d",&n,&k);
for(i=1;i<=n;i++)
fscanf(fin,"%f",&a[i]);
while(ok)
{
t=1;
p=1.0;
x=ok=0;
for(i=n;i>=1;i--)
{
t+=c[i];
c[i]=t%2;
t/=2;
if(c[i]) {x++; p=p*a[i];}
if(!c[i]) ok=1;
}
p*=2;
if(x==k) {m+=p; f++;}
}
fprintf(fout,"%0.6f",(float)m/(f*2));
fclose(fin);
fclose(fout);
return 0;
}