Cod sursa(job #1608128)

Utilizator king25Ionut Vasi king25 Data 21 februarie 2016 20:55:51
Problema Dezastru Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <iostream>
#include <fstream>
#include <vector>
#include <iomanip>
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
float suma=0,k1,sumam=1,n,contor;
float x;
vector<bool> Viz(30,false);
vector<float> V;
void back(int k){
    if(k==k1){
        suma+=sumam;
        contor++;
    }else{
        for(int i=0;i<n;i++){
            if(!Viz[i]){
                Viz[i]=true;
                sumam*=V[i];
                back(k+1);
                Viz[i]=false;
                sumam/=V[i];
            }
        }
    }
}
int main()
{
    f>>n>>k1;
    for(int i=0;i<n;i++){
        f>>x;
        V.push_back(x);
    }
    back(0);
    g<<fixed<<setprecision(6)<<suma/contor;
    return 0;
}