#include<bits/stdc++.h> using namespace std; int n,a[110][110],e1,e2,s1,s2; bool f=false; int fx[5]={0,0,1,0,-1}; int fy[5]={0,1,0,-1,0}; void dfs(int x,int y){ a[x][y]=1; int tx,ty; for(int i=1;i<=4;i++){ tx=x+fx[i]; ty=y+fy[i]; if(tx>=1&&tx<=n&&ty>=1&&ty<=n&&a[tx][ty]==0){ if(tx==e1&&ty==e2){ f=true; }else{ dfs(tx,ty); } } } } int main(){ cin>>n; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ cin>>a[i][j]; } } cin>>s1>>s2>>e1>>e2; if(a[s1][s2]==1||a[e1][e2]==1) { cout<<"NO"; }else{ dfs(s1,s2); if(f==true) cout<<"YES"; else cout<<"NO"; } return 0; } /************************************************************** Problem: 1430 User: hulaoshi Language: C++ Result: Accepted Time:26 ms Memory:2120 kb ****************************************************************/