#include using namespace std; using LL = long long; using ULL = unsigned long long; #define rep(i,n) for(int i=0; i<(n); i++) int main() { int N, z; cin >> N >> z; bool ok = false; if (N == 1) { if (z >= 2) ok = true; } else { int Z = 1; rep(i, N) Z *= z; for (int x = 1; x <= pow(2.e6, 1. / N); x++) { for (int y = x; y <= pow(2.e6, 1. / N); y++) { int X = 1; rep(i, N) X *= x; int Y = 1; rep(i, N) Y *= y; if (X + Y == Z) ok = true; } } } cout << (ok ? "Yes" : "No") << endl; return 0; }