#include using namespace std; #define rep(i,n) for(int i = 0; i < (n);i++) #define sz(x) int(x.size()) typedef long long ll; typedef pair P; int dx[8] = {-2,-2,-1,-1,1,1,2,2}; int dy[8] = {-1,1,-2,2,-2,2,-1,1}; int main(){ int x, y; cin >> x >> y; queue> que; que.push({0,{0,0}}); bool ok = false; int cnt = 3; while (!que.empty()){ auto p = que.front(); que.pop(); if (p.first > 3) continue; if (x == p.second.first && y == p.second.second) ok = true; rep(i,8){ int nx = dx[i] + p.second.first, ny = dy[i] + p.second.second; //cout << nx << " " << ny << endl; que.push({p.first + 1,{nx,ny}}); } } if (ok) cout << "YES" << endl; else cout << "NO" << endl; return 0; }