Cod sursa(job #3303307)
| Utilizator | Data | 15 iulie 2025 10:33:39 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.5 kb |
#include <bits/stdc++.h>
using namespace std;
int main() {
ifstream cin("dezastru.in");
ofstream cout("dezastru.out");
double n, k;
cin >> n >> k;
vector<double> v(n);
for (int i = 0; i < n; i++)
cin >> v[i];
long double res = 0;
long double fact = 1;
for (int i = 1; i <= n; i++)
fact *= i;
do {
long double r = 1;
for (int i = 0; i < k; i++)
r *= v[i];
res += r / (fact);
} while (next_permutation(v.begin(), v.end()));
cout << setprecision(6) << fixed << res;
}