dp,方程易得;用循环矩阵优化;
#include<bits/stdc++.h>
#define rep(i,k,n) for(int i=k;i<=(n);i++)
using namespace std;
const int N=1005;
int n,m,k;
struct mat{
double a[N];
mat(){rep(i,1,n)a[i]=0.0;} ///
}ans,aa,tmp;
mat operator*(mat a,mat b){mat c;
rep(i,1,n)rep(j,1,n)c.a[(i+j-2)%n+1]+=a.a[i]*b.a[j];
return c;}
int main(){//freopen("in.in","r",stdin);
scanf("%d%d%d",&n,&m,&k);
rep(i,1,n)scanf("%lf",&ans.a[i]);
aa.a[1]=(m-1)*1.0/m;aa.a[2]=1.0/m;tmp.a[1]=1.0;
for(;k;k>>=1){
if(k&1)tmp=tmp*aa;
aa=aa*aa;
}ans=ans*tmp;
rep(i,1,n)printf("%.3lf\n",ans.a[i]);
return 0;
}