program rqnoj;
var i,j,n,m,k,sum,t:longint;
f:array[1..2000,1..10]of longint;
ave,x,s:array[1..2000]of longint;
procedure qsort(lx,rx:longint);
var l,r,mid,mid1,mid2,temp:longint;
begin
l:=lx; r:=rx; mid:=ave[(l+r)div 2]; mid1:=s[(l+r)div 2]; mid2:=x[(l+r)div 2];
repeat
while (ave[l]>mid) or ((ave[l]=mid) and (s[l]<mid1)) or ((ave[l]=mid)and(s[l]=mid1)and(x[l]<mid2)) do inc(l);
while (ave[r]<mid) or ((ave[r]=mid) and (s[r]>mid1)) or ((ave[r]=mid)and(s[r]=mid1)and(x[r]>mid2)) do dec(r);
if l<=r then
begin
temp:=ave[l];ave[l]:=ave[r];ave[r]:=temp;
temp:=s[l];s[l]:=s[r];s[r]:=temp;
temp:=x[l];x[l]:=x[r];x[r]:=temp;
inc(l);
dec(r);
end;
until l>r;
if r>lx then qsort(lx,r);
if l<rx then qsort(l,rx);
end;
begin
readln(n,m,k);
for i:=1 to n do
begin
for j:=1 to k do
read(f[i,j]);
readln;
end;
for i:=1 to n do
begin
sum:=0;
for j:=1 to k do
inc(sum,f[i,j]);
ave[i]:=sum div k;
sum:=0;
for j:=1 to k do
inc(sum,sqr(f[i,j]-ave[i]));
s[i]:=sum div k;
x[i]:=i;
end;
qsort(1,n);
for i:=1 to m-1 do
write(x[i],' ');
writeln(x[m]);
end.