#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll n,m,a[101],c[101][101],g[101],num[101];
struct node{
ll x,y,id;
}f[101];
bool cmp(node u,node v){
if(u.y==v.y){
if(u.x==v.x){
return u.id<v.id;
}else{
return u.x>v.x;
}
}
return u.y<v.y;
}
int main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
cin>>g[i];
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>c[i][j];
if(c[i][j]>=g[j]){
f[i].x+=c[i][j]/g[j];
c[i][j]%=g[j];
}
}
f[i].id=i;
num[i]=f[i].x;
}
for(int j=1;j<=m;j++){
for(int i=1;i<=n;i++){
f[i].y=c[i][j];
}
for(int i=1;i<=n;i++){
f[i].id=i;
f[i].x=num[i];
}
sort(f+1,f+1+n,cmp);
for(int i=1;i<=n;i++){
cout<<f[i].id<<" ";
}
cout<<endl;
}
return 0;
}