#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)
{
	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++;
	/*cout<<"[";
	for(i=head;i<=tail;i++)
		cout<<q[i].x<<" ";
	cout<<"]"<<endl;*/
	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++)
			cout<<f[i]<<" ";
		cout<<endl;*/
		for(i=1;i<=n;i++)
		{
			j=getmin(f[i-1],i-1);
			//cout<<j<<endl;
			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;
}