Cod sursa(job #701976)
Utilizator | Data | 1 martie 2012 18:49:25 | |
---|---|---|---|
Problema | Dezastru | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.44 kb |
#include <fstream>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
#define dim 30
double v[dim],s;
int n,k,q;
inline void back(int val, int start, double suma)
{
if(val==k+1)
{
s+=suma;
++q;
}
else
for(int f=start+1;f<=n-k+val;++f)
back(val+1,f,v[f]*suma);
}
int main()
{
fin>>n >>k;
for(int i=1;i<=n;++i)
fin>>v[i];
back(1,0,1);
fout<<s/q;
return 0;
}