Pagini recente » Cod sursa (job #815484) | Cod sursa (job #180046) | Cod sursa (job #588156) | Cod sursa (job #410408) | Cod sursa (job #404378)
Cod sursa(job #404378)
#include <iostream.h>
#include <fstream.h>
ifstream f("dezastru.in");
ofstream g("dezastru.out");
float v[27],sum,s;
int x[27],k,n,i,p,fac;
void citire(){
f>>n>>p;
for(i=1;i<=n;i++)
f>>v[i];
}
void sol(int k){
s=1;
for(i=1;i<=p;i++)
s=s*v[x[i]];
sum=sum+s/fac;
}
int cont(int k){
for(i=1;i<k;i++)
if(x[i]==x[k])
return 0;
return 1;
}
void back(){
k=1;
x[k]=0;
while(k>0)
if(x[k]<n){
x[k]++;
if(cont(k))
if(k==n){
sol(k);
}
else {
k++;
x[k]=0;
}
}
else k--;
}
int main(){
citire();
fac=1;
for(i=2;i<=n;i++)
fac=fac*i;
back();
g<<sum;
}