#include <bits/stdc++.h>
using namespace std;
int n,m,t,s;
int v[1001]={0};
struct quque
{
int x,y;
}q[1001];
int head,tail;
int getmin(int x,int y)//x:值,y:下标
{
int i;
while(head<=tail&&q[tail].x>=x)
tail--;
q[++tail].x=x,q[tail].y=y;
while(y-q[head].y+1>t)
head++;
return q[head].y;
}
int main()
{
int i,j;
scanf("%d %d %d",&n,&m,&t);
while(m--)
{
int f[1001]={0},p;
int value=0,left=0,right=0;
head=1,tail=0;
for(i=1;i<=n;i++)
{
scanf("%d",&s);
f[i]=f[i-1]+s;
}
for(i=1;i<=n;i++)
{
j=getmin(f[i-1],i-1);
if(f[i]-f[j]>=value)
{
value=f[i]-f[j];
left=j+1,right=i;
}
}
for(i=left;i<=right;i++)
v[i]++;
}
for(i=1;i<=n;i++)
printf("%d ",v[i]);
return 0;
}