#include<bits/stdc++.h>
using namespace std;
long long n,m,a[1008][1008],b[1008][1008];
double k[10086],tot1[10086],tot2[10086],sqr[10086],sqr2[10086];
int wx[10086],wy[10086];
int main()
{
cin>>m>>n;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>a[i][j],tot1[i]+=(double)a[i][j];
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>b[i][j],tot2[i]+=(double)b[i][j];
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
sqr[i]+=((double)a[i][j]-tot1[i]/m)*((double)a[i][j]-tot1[i]/m);
sqr2[i]+=((double)b[i][j]-tot2[i]/m)*((double)b[i][j]-tot2[i]/m);
}
sqr[i]/=m;
sqr2[i]/=m;
k[i]=(double)sqr[i]+(double)sqr2[i];
}
int cnt=0;
for(int i=1;i<=n-1;i++)
{
for(int j=i+1;j<=n;j++)
{
if(k[i]>k[j])
{
cnt++;
swap(k[i],k[j]);
wx[cnt]=i;
wy[cnt]=j;
}
}
}
cout<<endl;
cout<<cnt<<endl;
for(int i=1;i<=cnt;i++)
{
cout<<wx[i]<<" "<<wy[i]<<endl;
}
return 0;
}