//https://ncode.syosetu.com/n4830bu/240/ #include using namespace std; int main() { int X, Y; cin >> X >> Y; vector> now{{0, 0}}; const int dx[8] = {1, 1, -1, -1, 2, 2, -2, -2}, dy[8] = {2, -2, 2, -2, 1, -1, 1, -1}; for (int _ = 0; _ < 3; _++) { vector> nxt; for (auto&& [x, y] : now) { for (int i = 0; i < 8; i++) { int x_nxt = x + dx[i], y_nxt = y + dy[i]; if (x_nxt == X && y_nxt == Y) { cout << "YES" << endl; return 0; } nxt.emplace_back(x_nxt, y_nxt); } } swap(now, nxt); } cout << "NO" << endl; }