Cod sursa(job #39505)

Utilizator me_andyAvramescu Andrei me_andy Data 26 martie 2007 19:40:33
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<fstream.h>

  float a[30],sol[10000],n,k1,suma,c;

void sum()
{
 int i;
 float s;
 s=1;
 for(i=1;i<=k1;i++)
	s=s*a[sol[i]];
  suma=suma+s/c;
  suma=suma+s/c;
}

void back(int k)
{
 int i;
 if(k<k1+1)
  for(i=sol[k-1]+1;i<=n;i++)
  {
	sol[k]=i;
	back(k+1);
  }
  else sum();
  return;
}

int main()
{
 ifstream f("dezastru.in");
 ofstream g("dezastru.out");
 int i;
 f>>n>>k1;
 for(i=1;i<=n;i++)
  f>>a[i];
  sol[1]=1;
	c=1;
  for(i=1;i<=n;i++)
  c=c*i;
  back(1);
  g<<suma;

  f.close();
  g.close();

 return 0;
}