#include <bits/stdc++.h>
using namespace std;
int main()
{
int m,r;
scanf("%d%d",&m,&r);
int n = m*r;
int vet[n], pos[n+1];
for(int i=0; i<n; i++)
{
scanf("%d",&vet[i]);
if(vet[i] != 0) pos[vet[i]] = i;
}
int ans = 0, x=0;
for(int i=0; i<n; i++)
{
if((i+1)%m == 0) continue;
x++;
if(vet[i] != x)
{
ans++;
printf("Swap: %d %d\n",i+1, pos[x]+1);
pos[vet[i]] = pos[x];
swap(vet[i], vet[pos[x]]);
}
}
printf("Number of swaps: %d\n",ans);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKQp7CiAgICBpbnQgbSxyOwogICAgc2NhbmYoIiVkJWQiLCZtLCZyKTsKCiAgICBpbnQgbiA9IG0qcjsKICAgIGludCB2ZXRbbl0sIHBvc1tuKzFdOwoKICAgIGZvcihpbnQgaT0wOyBpPG47IGkrKykKICAgIHsKICAgICAgICBzY2FuZigiJWQiLCZ2ZXRbaV0pOwogICAgICAgIGlmKHZldFtpXSAhPSAwKSBwb3NbdmV0W2ldXSA9IGk7CiAgICB9CgogICAgaW50IGFucyA9IDAsIHg9MDsKICAgIGZvcihpbnQgaT0wOyBpPG47IGkrKykKICAgIHsKICAgICAgICBpZigoaSsxKSVtID09IDApIGNvbnRpbnVlOwogICAgICAgIHgrKzsKCiAgICAgICAgaWYodmV0W2ldICE9IHgpCiAgICAgICAgewogICAgICAgICAgICBhbnMrKzsKICAgICAgICAgICAgcHJpbnRmKCJTd2FwOiAlZCAlZFxuIixpKzEsIHBvc1t4XSsxKTsKICAgICAgICAgICAgcG9zW3ZldFtpXV0gPSBwb3NbeF07CiAgICAgICAgICAgIHN3YXAodmV0W2ldLCB2ZXRbcG9zW3hdXSk7CiAgICAgICAgfQogICAgfQoKICAgIHByaW50ZigiTnVtYmVyIG9mIHN3YXBzOiAlZFxuIixhbnMpOwogICAgcmV0dXJuIDA7Cn0K