#include using namespace std; typedef pair pii; typedef long long ll; const int N = 2000086, MOD = 1e9 + 7, INF = 0x3f3f3f3f; ll res; int n, m, cnt, w[N]; int main() { ll n, k; cin >> k >> n; set st, g, t; for (int i = 1; ; i++) { if ((ll)i * i * i * i * i * i >= n) break; st.insert((ll)i * i * i * i * i * i); } for (int i = 1; ; i++) { if ((ll)i * i * i * i >= n) break; g.insert((ll)i * i * i * i); } set ans; for (auto u : st) for (auto v : g) { if (u + v <= n) t.insert(u + v); } ll x = 1, v = k; for (auto u : t) { while (v < u) { x++; v = x * x * k; } if (v == u) ans.insert(v); } printf("%d\n", ans.size()); return 0; }