两个人的最短路相同,因为只有两行,那么要么在同一个位置,要么刚好错开在不同的行,因为第一行到第二行(2,n)会比第二行的多一步,所以有一种就是(x1!=x2&&y1==y2+1) 然后另一种就是 让下面的右边防障碍,让它往上多一步,那么第一行的就在这个左边就行了(x1!=x2&&y2==y1+1&&y2<n-1),注意因为这个情况第二行右边必须要有一个地方方障碍所以还得y2<n-1

#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
using ld = long double;
using PII=pair<ll,ll>;
using PIII=pair<int,pair<int,int>>;
const ld ESP = 1e-10;
const ld PI = acosl(-1);
const int N=1e5+10;
const int M=2e5+10;
// const int mod = 1000000007;
const int mod = 998244353;
//随机化
random_device rd;
mt19937 gen(rd());
uniform_int_distribution<> Tp(1, 1000000000);
// cout<<fixed<<setprecision(10);


void solve(){   
    int n;
    cin>>n;
    int x1,x2,y1,y2;
    cin>>x1>>y1;
    cin>>x2>>y2;
    if(x1>x2){
        swap(x1,x2);
        swap(y1,y2);
    }
    if((x1==x2&&y1==y2)||(x1!=x2&&y1==y2+1)||(x1!=x2&&y2==y1+1&&y2<n-1)){
        cout<<"YES"<<'\n';
    }else{
        cout<<"NO"<<'\n';
    }
}   
int main(){
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int _=1;
    // cin>>_;
    while(_--){
        solve();
    }
    return 0;
}