Cod sursa(job #448483)
| Utilizator | Data | 3 mai 2010 20:58:39 | |
|---|---|---|---|
| Problema | Dezastru | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.49 kb |
#include <cstdio>
double v[1<<6],pos=0.0;
int n,k,combinare[1<<6][1<<6],c;
void citire()
{
int i;
freopen("dezastru.in","r",stdin);
freopen("dezastru.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=0;i<n;++i)
scanf("%lf",v+i);//atac=v
}
void bkt(int p,int init,double poz)
{
if (p==k)
{
pos+=poz;
++c;
return;
}
for (int i=init;i<=n-k+p;i++)
bkt(p+1,i+1,poz*v[i]);
}
void rez()
{
printf("%3lf",pos/c);
}
int main()
{
citire();
bkt(0,0,1);
rez();
return 0;
}
