Pagini recente » Cod sursa (job #580873) | Cod sursa (job #1002818) | Cod sursa (job #3171887) | Cod sursa (job #3145648) | Cod sursa (job #2678074)
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int sol[20],n,k,nr;
float r, a[20];
void afis()
{ float x=1;
nr++;
for( int i=1 ; i<=k ; i++ )
{ x*=a[sol[i]];
}
r+=x;
}
void bkt(int pas)
{ int i;
if(pas==k+1)
{ afis();
}
else
{ if(k>1) sol[pas]=sol[pas-1];
else sol[pas]=0;
while(sol[pas]<n-k+pas)
{ sol[pas]++;
bkt(pas+1);
}
}
}
int main()
{
f>>n>>k;
for(int i=1;i<=n;i++) f>>a[i];
bkt(1);
g<<r/nr;
return 0;
}