Cod sursa(job #1450838)

Utilizator marinaflommarina florentina marinaflom Data 14 iunie 2015 20:58:20
Problema Dezastru Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include<fstream>
using namespace std;
int n,m;
double v[30];
int a[30];
double s;
int nrc;
void combinari(int k)
{
    if(k==m+1)                ///k ul de acolo e de fapt m ul meu de pe infoarena
    {
        nrc++;
        double p=1;
        for(int i=1; i<=m; i++ )
            p*=v[a[i]];
            s+=p;
        return;
    }
    for(int i=a[k-1]+1; i<=n-m+k; i++)
        {a[k]=i;
        combinari(k+1);}
}
int main()
{
    ifstream f("dezastru.in");
    ofstream g("dezastru.out");
    f>>n>>m;
    for(int i=1; i<=n; i++)
        f>>v[i];

    f.close();
    combinari(1);
    g<<s/nrc;
    g.close();
    return 0;
}