#include<bits/stdc++.h>
using namespace std;
long long lg[1005][1005]={0};
char dt[1005][1005]={'a'};
int n,m,z=0;
int dq;
int xx[5]={0,1,-1,0,0};
int yy[5]={0,0,0,1,-1};
void dfs(int x,int y)
{
for(int i=1;i<=4;i++)
{
if(dt[x+xx[i]][y+yy[i]]>='0'&&dt[x+xx[i]][y+yy[i]]<='1'&&dt[x+xx[i]][y+yy[i]]!=dt[x][y]&&lg[x+xx[i]][y+yy[i]]==0)
{
lg[x+xx[i]][y+yy[i]]=1;
z++;
dfs(x+xx[i],y+yy[i]);
}
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
for(int l=1;l<=n;l++)
{
cin>>dt[i][l];
}
}
while(m--)
{
z=0;
for(int i=1;i<=n;i++)
{
for(int l=1;l<=n;l++)
{
lg[i][l]=0;
}
}
int x,y;
cin>>x>>y;
dfs(x,y);
cout<<z<<endl;
}
return 0;
}