#include <bits/stdc++.h>
using namespace std;
#define int long long
#define FOR(i,a,b) for (int i=(int)a;i<=(int)b;i++)
#define FORD(i,a,b) for (int i=(int)a;i>=(int)b;i--)
#define fast_io ios::sync_with_stdio(0); cin.tie(0)
#define pb push_back
const int oo=1e9+7;
const int maxn=1e6+5;
int n,m,h;
typedef pair<int,int> pii;
vector <pii> b[maxn];
vector <int> a[maxn],d[maxn],lowd(maxn);
int dx[4]={0,1,0,-1};
int dy[4]={1,0,-1,0};
void BFS(int h1,int c1, int h2, int c2)
{
//queue <pii> q;
pii q[maxn];
FOR(i,1,m)
FOR(j,1,n)
d[i][j]=oo;
int f=1,l=1,r=1;
//q.push({h1,c1});
d[h1][c1]=0;
lowd[f]=0;
q[l]={h1,c1};
while (l<=r)
{
int uh=q[l].first;
int uc=q[l].second;
l++;
if (uh==h2 && uc==c2) break;
FOR(i,0,3)
{
int vh=uh+dx[i];
int vc=uc+dy[i];
if (vh==0 || vh>m || vc==0 || vc>n) continue;
if (d[vh][vc]==oo)
{
d[vh][vc]=d[uh][uc]+1;
r++;
q[r]={vh,vc};
//q.push({vh,vc});
lowd[r]=d[vh][vc];
}
}
while (f<=r && lowd[f]<=d[uh][uc]-2)
{
int x=q[f].first;
int y=q[f].second;
int gt=a[x][y];
f++;
for (auto v:b[gt])
if (d[v.first][v.second]==oo)
{
d[v.first][v.second]=d[x][y]+3;
r++;
q[r]={v.first,v.second};
//q.push({v.first,v.second});
lowd[r]=d[v.first][v.second];
}
}
if (d[h2][c2]!=oo) break;
}
cout <<d[h2][c2]<<endl;
}
signed main()
{
//freopen ("COVID19.INP","r",stdin);
//freopen ("COVID19.OUT","w",stdout);
fast_io;
cin >>m>>n>>h;
FOR(i,1,m)
{
a[i].resize(n+5);
d[i].resize(n+5);
FOR(j,1,n)
cin >>a[i][j];
}
FOR(i,1,m)
FOR(j,1,n)
b[i*j].pb(pii(i,j));
FOR(i,1,h)
{
int h1,c1,h2,c2;
cin >>h1>>c1>>h2>>c2;
BFS(h1,c1,h2,c2);
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIGludCBsb25nIGxvbmcKI2RlZmluZSBGT1IoaSxhLGIpIGZvciAoaW50IGk9KGludClhO2k8PShpbnQpYjtpKyspCiNkZWZpbmUgRk9SRChpLGEsYikgZm9yIChpbnQgaT0oaW50KWE7aT49KGludCliO2ktLSkKI2RlZmluZSBmYXN0X2lvIGlvczo6c3luY193aXRoX3N0ZGlvKDApOyBjaW4udGllKDApCiNkZWZpbmUgcGIgcHVzaF9iYWNrCmNvbnN0IGludCBvbz0xZTkrNzsKY29uc3QgaW50IG1heG49MWU2KzU7CmludCBuLG0saDsKdHlwZWRlZiBwYWlyPGludCxpbnQ+IHBpaTsKdmVjdG9yIDxwaWk+IGJbbWF4bl07CnZlY3RvciA8aW50PiBhW21heG5dLGRbbWF4bl0sbG93ZChtYXhuKTsKaW50IGR4WzRdPXswLDEsMCwtMX07CmludCBkeVs0XT17MSwwLC0xLDB9Owp2b2lkIEJGUyhpbnQgaDEsaW50IGMxLCBpbnQgaDIsIGludCBjMikKewogICAgLy9xdWV1ZSA8cGlpPiBxOwogICAgcGlpIHFbbWF4bl07CiAgICBGT1IoaSwxLG0pCiAgICAgICAgRk9SKGosMSxuKQogICAgICAgICAgICBkW2ldW2pdPW9vOwogICAgaW50IGY9MSxsPTEscj0xOwogICAgLy9xLnB1c2goe2gxLGMxfSk7CiAgICBkW2gxXVtjMV09MDsKICAgIGxvd2RbZl09MDsKICAgIHFbbF09e2gxLGMxfTsKICAgIHdoaWxlIChsPD1yKQogICAgewogICAgICAgIGludCB1aD1xW2xdLmZpcnN0OwogICAgICAgIGludCB1Yz1xW2xdLnNlY29uZDsKICAgICAgICBsKys7CiAgICAgICAgaWYgKHVoPT1oMiAmJiB1Yz09YzIpIGJyZWFrOwogICAgICAgIEZPUihpLDAsMykKICAgICAgICB7CiAgICAgICAgICAgIGludCB2aD11aCtkeFtpXTsKICAgICAgICAgICAgaW50IHZjPXVjK2R5W2ldOwogICAgICAgICAgICBpZiAodmg9PTAgfHwgdmg+bSB8fCB2Yz09MCB8fCB2Yz5uKSBjb250aW51ZTsKICAgICAgICAgICAgaWYgKGRbdmhdW3ZjXT09b28pCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGRbdmhdW3ZjXT1kW3VoXVt1Y10rMTsKICAgICAgICAgICAgICAgIHIrKzsKICAgICAgICAgICAgICAgIHFbcl09e3ZoLHZjfTsKICAgICAgICAgICAgICAgIC8vcS5wdXNoKHt2aCx2Y30pOwogICAgICAgICAgICAgICAgbG93ZFtyXT1kW3ZoXVt2Y107CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgd2hpbGUgKGY8PXIgJiYgbG93ZFtmXTw9ZFt1aF1bdWNdLTIpCiAgICAgICAgewogICAgICAgICAgICBpbnQgeD1xW2ZdLmZpcnN0OwogICAgICAgICAgICBpbnQgeT1xW2ZdLnNlY29uZDsKICAgICAgICAgICAgaW50IGd0PWFbeF1beV07CiAgICAgICAgICAgIGYrKzsKICAgICAgICAgICAgZm9yIChhdXRvIHY6YltndF0pCiAgICAgICAgICAgICAgICBpZiAoZFt2LmZpcnN0XVt2LnNlY29uZF09PW9vKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGRbdi5maXJzdF1bdi5zZWNvbmRdPWRbeF1beV0rMzsKICAgICAgICAgICAgICAgICAgICByKys7CiAgICAgICAgICAgICAgICAgICAgcVtyXT17di5maXJzdCx2LnNlY29uZH07CiAgICAgICAgICAgICAgICAgICAgLy9xLnB1c2goe3YuZmlyc3Qsdi5zZWNvbmR9KTsKICAgICAgICAgICAgICAgICAgICBsb3dkW3JdPWRbdi5maXJzdF1bdi5zZWNvbmRdOwogICAgICAgICAgICAgICAgfQoKICAgICAgICB9CiAgICAgICAgaWYgKGRbaDJdW2MyXSE9b28pIGJyZWFrOwogICAgfQogICAgY291dCA8PGRbaDJdW2MyXTw8ZW5kbDsKCn0Kc2lnbmVkIG1haW4oKQp7CiAgICAvL2ZyZW9wZW4gKCJDT1ZJRDE5LklOUCIsInIiLHN0ZGluKTsKICAgIC8vZnJlb3BlbiAoIkNPVklEMTkuT1VUIiwidyIsc3Rkb3V0KTsKICAgIGZhc3RfaW87CiAgICBjaW4gPj5tPj5uPj5oOwogICAgRk9SKGksMSxtKQogICAgewogICAgICAgIGFbaV0ucmVzaXplKG4rNSk7CiAgICAgICAgZFtpXS5yZXNpemUobis1KTsKICAgICAgICBGT1IoaiwxLG4pCiAgICAgICAgICAgIGNpbiA+PmFbaV1bal07CiAgICB9CiAgICBGT1IoaSwxLG0pCiAgICAgICAgRk9SKGosMSxuKQogICAgICAgICAgICBiW2kqal0ucGIocGlpKGksaikpOwogICAgRk9SKGksMSxoKQogICAgewogICAgICAgIGludCBoMSxjMSxoMixjMjsKICAgICAgICBjaW4gPj5oMT4+YzE+PmgyPj5jMjsKICAgICAgICBCRlMoaDEsYzEsaDIsYzIpOwogICAgfQogICAgcmV0dXJuIDA7Cn0K