Cod sursa(job #311147)

Utilizator mihaionlyMihai Jiplea mihaionly Data 2 mai 2009 19:47:52
Problema Dezastru Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.52 kb
#include <stdio.h>
FILE *f=fopen("dezastru.in","r");
FILE *g=fopen("dezastru.out","w");
int n,k,uz[27],nr;
float p,s,a[27];
void afisare()
 {
 p=1;
 int i;
 for(i=1;i<=n;i++)
  if(uz[i])
   p*=a[i];
 nr++;
 s+=p;
 }
void comb(int j,int l)
 {
 if(l==k+1)
  afisare();
 else
  {
  for(int i=j;i<=n;i++)
   {
   uz[i]=1;
   comb(i+1,l+1);
   uz[i]=0;
   }
  }
 }
int main()
 {
 fscanf(f,"%d %d",&n,&k);
 for(int i=1;i<=n;i++)
  fscanf(f,"%f",&a[i]);
 comb(1,1);
 s/=nr;
 fprintf(g,"%f",s);
 }