#include<cstdio>
#include<iostream>
using namespace std;
int n,m;
string mp[10005];
int color[10005][10005];
int id[10005];
int p=0;
int vir[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int ans;
int dfs(int x,int y){
id[p]++;
for(int i=0;i<4;i++){
int tx = x+vir[i][0];
int ty = y+vir[i][1];
if(tx<0||tx>=n||ty<0||ty>=n)continue;
if(!color[tx][ty]){
if(mp[x][y]=='0'){
if(mp[tx][ty]=='1'){
color[tx][ty]=p;
dfs(tx,ty);
}
}else{
if(mp[tx][ty]=='0'){
color[tx][ty]=p;
dfs(tx,ty);
}
}
}
}
}
int main(){
cin>>n>>m;
for(int i=0;i<n;i++){
cin>>mp[i];
}
while(m--){
int x,y;
cin>>x>>y;
x--,y--;
if(color[x][y]>0){
printf("%d\n",id[color[x][y]]);
}else{
p++;
color[x][y]=p;
dfs(x,y);
printf("%d\n",id[p]);
}
}
return 0;
}