Cod sursa(job #1193220)

Utilizator Johnny07Savu Ioan-Daniel Johnny07 Data 31 mai 2014 12:04:14
Problema Dezastru Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <iostream>
#include <fstream>
using namespace std;
long long fac;
int n,k,v[2000],fr[200];
float a[2000],s=1,rez;
ifstream f("dezastru.in");
ofstream g("dezastru.out");


void check (int kk)

{
    for (int j=1;j<=kk;j++) s*=a[v[j]];
    rez+=s;
   // cout<<s<<" "<<rez<<"\n";
    s=1;
}

void Back (int p)
{
    int i;
     if (p<n)
    for (i=1;i<=n;i++)
    {
        v[p]=i;


        if (fr[v[p]]==0) {fr[v[p]]++;Back(p+1);fr[v[p]]--;}
       //if ((p==n)&&(fr[v[p]]==0))  check (k);
    }
    else check (k);

}


int main()
{
    int i;
f>>n>>k;
for (i=1;i<=n;i++)
{
    f>>a[i];
}
Back (1);
fac=1;
for (i=1;i<=n;i++) fac*=i;
g<<rez/fac;


    return 0;
}