Cod sursa(job #2466001)
| Utilizator | Data | 1 octombrie 2019 10:40:11 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 10 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.47 kb |
#include <iostream>
#include <fstream>
#include <vector>
#include <cmath>
#include <algorithm>
using namespace std;
ifstream fin("dezastru.in");
ofstream fout("dezastru.out");
long long n, k, nrp;
vector <int> v;
float a[30], sol;
int main(){
fin >> n >> k;
for(int i = 1; i <= n; ++i){
fin >> a[i];
v.push_back(i);
}
do{
float p = 1;
for(int i=1; i<=k; i++){
p *= a[v[i]];
}
nrp++;
sol+=p;
}while(next_permutation(v.begin(), v.end()));
fout << sol/nrp;
}
