#include<bits/stdc++.h>
using namespace std;
int m,n,a[1001][1001],val[1001];
int main()
{
cin>>m>>n;
for(int i=1;i<=n;i++){
double s=0,aval=0.0;
for(int j=1;j<=m;j++){
cin>>a[i][j];
s+=(double)a[i][j];
}
s/=(double)m;
for(int j=1;j<=m;j++){
aval+=(a[i][j]-s)*(a[i][j]-s);
}
aval/=(double)m;
val[i]+=aval;
}
for(int i=1;i<=n;i++){
double s=0,aval=0.0;
for(int j=1;j<=m;j++){
cin>>a[i][j];
s+=(double)a[i][j];
}
s/=(double)m;
for(int j=1;j<=m;j++){
aval+=(a[i][j]-s)*(a[i][j]-s);
}
aval/=(double)m;
val[i]+=aval;
}
double s[1001];
for(int I=1;I<=1000;I++)s[I]=val[I];
int sum=0;
for(int i=1;i<n;i++){
for(int j=1;j<=n-i;j++){
if(s[j]>s[j+1]){
sum++;
swap(a[j],a[j+1]);
}
}
}
cout<<sum<<endl;
for(int i=1;i<n;i++){
for(int j=1;j<=n-i;j++){
if(val[j]>val[j+1]){
cout<<j<<" "<<j+1<<endl;
swap(val[j],val[j+1]);
}
}
}
return 0;
}