Cod sursa(job #2913933)
Utilizator | Enache Tudor Tudor_Enache | Data | 18 iulie 2022 00:20:49 |
---|---|---|---|
Problema | Dezastru | Scor | 50 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.69 kb |
#include <fstream>
using namespace std;
ifstream cin("dezastru.in");
ofstream cout ("dezastru.out");
int x[26];
float a[26];
int n,k;
float sum,cnt = 0;
bool pus[25];
void afis(){
float prod= 1;
for (int i = 1; i <=k;++i)
prod*= a[x[i]];
sum += prod;
++cnt;
}
void back(int pas){
for (int i = 1; i <= n;++i)
{
if (!pus[i])
{
x[pas] = i;
pus[i] =1;
if (pas < k)
back(pas+1);
else
afis();
pus[i] = 0;
}
}
}
int main(){
cin >> n >> k;
for (int i = 1; i<=n;++i)
cin >> a[i];
back(1);
cout << sum / cnt;
}