Pagini recente » Cod sursa (job #2752724) | Cod sursa (job #44206) | Cod sursa (job #620472) | Cod sursa (job #2442154) | Cod sursa (job #764038)
Cod sursa(job #764038)
#include<cstdio>
int n,k,aux;float v[26];bool matrix[26][26];
void get()
{
freopen("dezastru.in","r",stdin);
scanf("%d%d",&n,&k);
for(int i=1;i<=n;i++)
scanf("%f",&v[i]);
aux=n-k+1;
}
void prepare()
{
int i,j;
for(i=1;i<=aux;i++)
{
for(j=n;j>aux;j--)
matrix[i][j]=1;
matrix[i][aux-i+1]=1;
}
}
void fight()
{
freopen("dezastru.out","w",stdout);
int i,j,m,index=aux;float ax=1,s=0;
for(i=1;i<=aux;i++,ax=1)
{
for(j=n;j>0;j--)
if(matrix[i][j])
ax*=v[j];
s+=ax;
for(j=n,ax=1;j>aux-i+1;j--,ax=1)
if(!matrix[i][j-1])
{
matrix[i][j-1]=1,matrix[i][j]=0,j=n+1;
for(m=n;m>0;m--)
if(matrix[i][m])
ax*=v[m];
s+=ax;++index;
}
}
printf("%f",s/index);
}
int main()
{
get();
prepare();
fight();
}