Cod sursa(job #39532)

Utilizator me_andyAvramescu Andrei me_andy Data 26 martie 2007 20:03:58
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include<fstream.h>

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

void back(int k)
{
 int i,q;
 float s;
 if(k<k1+1)
  for(i=sol[k-1]+1;i<=n;i++)
  {
	sol[k]=i;
	back(k+1);
  }
  else
 {
  s=1;
 for(q=1;q<=k1;q++)
	s=s*a[sol[q]];
  suma=suma+s/c;
  suma=suma+s/c;
 }
}

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;
}