Cod sursa(job #402478)

Utilizator de3de3Ilinca Diana Andreea de3de3 Data 23 februarie 2010 21:27:49
Problema Dezastru Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include<fstream>
#include<stdio.h>
using namespace std;

ifstream f("dezastru.in");
int n, k, x[26], m, i ;
float sum=0, v[26], sum1=1,nr=0;
void creare(int m){
	sum1=1;
	nr++;
	for(int i=1;i<=m;i++){
		sum1*=v[x[i]];
    }
	sum+=sum1;
}
void back(){
	m=1;
	x[m]=0;
	while(m>0)
		if(x[m]<n){
			x[m]++;
			if(m==k)
				creare(m);
			else {
				m++;
				x[m]=x[m-1];
			}
		}
		else m--;
}
int main(){
	freopen("dezastru.out","w",stdout);
	f>>n>>k;
	for(i=1;i<=n;i++)
		f>>v[i];
	back();
	printf("%0.6f",sum/nr);
	f.close();
	return 0;
}