#include <bits/stdc++.h>
#define PII pair<int,int>
using namespace std;
int c[1005][1005],cnt[1005][1005];
int dy[5]={0,-1,1,0};
int dx[5]={1,0,0,-1};
int x,y,xx,yy,n;
void bfs(){
queue<PII>q;
q.push({x,y});
int x1,y1,xd,yd;
while(!q.empty()){
x1=q.front().first;
y1=q.front().second;
for(int i=0;i<4;++i){
xd=x1+dx[i];
yd=y1+dy[i];
if(xd>0&&xd<=n&&yd>0&&yd<=n&&c[xd][yd]==0){
if(cnt[xd][yd]>cnt[x1][y1]||cnt[xd][yd]==0){
q.push({xd,yd});
cnt[xd][yd]=cnt[x1][y1]+1;
}
}
}
q.pop();
}
}
int main(){
cin>>n;
for(int i=1;i<=n;++i){
string a;
cin>>a;
for(int j=0;j<a.size();++j){
c[i][j+1]=a[j]-'0';
}
}
cin>>x>>y>>xx>>yy;
bfs();
cout<<cnt[xx][yy];
}