Pagini recente » Cod sursa (job #3148705) | Cod sursa (job #153152) | Cod sursa (job #2246802) | Cod sursa (job #1582597) | Cod sursa (job #2227799)
#include <iostream>
#include <fstream>
#define MAX 25
using namespace std;
//var -> cite valori la combinari
void backtrap(float arr[MAX], int nr, int comb, int nivel,float obt, float *var,int poz,int *much){
if( nivel == comb ) {
(*much)++;
(*var)+=obt;
}
else {
int i;
for(i = poz ; i < nr; i++){
backtrap(arr,nr,comb,nivel + 1,obt * arr[i],var,i + 1,much);
}
}
}
int main()
{
ifstream in("dezastru.in");
ofstream out("dezastru.out");
int nr, comb, i;
float arr[MAX];
in >> nr >> comb;
for (i = 0 ; i != nr; i++){
in >> arr[i];
}
float var = 0;
int much=0;
backtrap(arr,nr,comb,0,1,&var,0,&much);
if (much == 0)out<<"0"<<endl;
else out<<var/much<<endl;
return 0;
}