Cod sursa(job #2246467)

Utilizator vladisimovlad coneschi vladisimo Data 27 septembrie 2018 09:42:15
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <algorithm>
#include <iomanip>
#include <fstream>

int main() {
  std::ifstream fin("dezastru.in");
  std::ofstream fout("dezastru.out");
  int n, k;
  fin >> n >> k;
  double p[2 + n];
  for (int i = 1; i <= n; i++)
    fin >> p[i];
  double sum = 0;
  for (int q = 1; q <= n; q++) {
    double prod = 1;
    for (int i = 1; i <= k; i++)
      prod *= i * p[i];
    double w = p[1];
    for (int i = 1; i < n; i++)
      p[i] = p[i + 1];
    p[n] = w;
    sum += prod;
  }
  for (int i = 1; i <= n; i++)
    sum /= i;
  fout << std::fixed << std::setprecision(6) << sum;
  return 0;
}