Cod sursa(job #1905812)

Utilizator tifui.alexandruTifui Ioan Alexandru tifui.alexandru Data 6 martie 2017 11:02:03
Problema Dezastru Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <iostream>
#include <fstream>
#define ll long double
using namespace std;
ifstream f("dezastru.in");
ofstream g("dezastru.out");
int v[30];
int n,K;
ll x[30];
long double P=0;
void rez()
{
    int i;
    long double p=1;
    for(i=1;i<=K;i++)
        p*=x[v[i]];
    p*=2;
    P+=p;
}
void Comb(int k)
{
    int i;
    for(i=v[k-1]+1;i<=n-K+k;i++)
    {
        v[k]=i;
        if(k==K) rez();
        else Comb(k+1);
    }
}
int main()
{int i;
f>>n>>K;
for(i=1;i<=n;i++)
    f>>x[i];
Comb(1);
unsigned long long fct=1;
for(i=1;i<=n;i++)
    fct*=i;
g<<P/fct;

    return 0;
}