Cod sursa(job #2766619)

Utilizator BlueLuca888Girbovan Robert Luca BlueLuca888 Data 2 august 2021 15:39:45
Problema Dezastru Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include <fstream>
#include <iomanip>

using namespace std;

ifstream fin  ("dezastru.in");
ofstream fout ("dezastru.out");

int n, k, f[30];
double sol=0.000000, d[30];

void bt(int cnt, double crt){
    if(cnt > k){
        sol = sol + 0.000000 + crt;
        return;
    }

    for(int i=1; i<=n; i++)
        if(f[i] == 0){
            f[i]=1;
            bt(cnt+1, 1.000000 * crt * d[i]);
            f[i]=0;
        }
}

int main (){
    fin>>n>>k;
    for(int i=1; i<=n; i++)
        fin>>d[i];

    bt(1, 1.000000);

    for(int i=2; i<=n; i++)
        sol = sol * 1.000000 / i;


    fout<<fixed<<setprecision(6)<<sol;
    return 0;
}