#include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef vector VI; #define FOR(i,a,n) for(int (i)=(a);(i)<(n);(i)++) #define eFOR(i,a,n) for(int (i)=(a);(i)<=(n);(i)++) #define SORT(i) sort((i).begin(),(i).end()) #define rSORT(i,a) sort((i).begin(),(i).end(),(a)) constexpr auto INF = 1000000000; constexpr auto LLINF = 1LL << 60; constexpr auto mod = 1000000007; template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; }return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; }return 0; } int main() { cin.tie(0); ios::sync_with_stdio(false); ll n, k; cin >> n >> k; ll ans = 0; for (ll i = 2; i * i <= k; i++) { if (!(k % i)) { ll a = 0, b = 0; if (i > n)a = (i - n - 1) * 2; if (k / i > n)b = (k / i - n - 1) * 2; ans += max((i - 1 - a), 0LL) * max((k / i - 1 - b), 0LL); if (i * i != k)ans += max((i - 1 - a), 0LL) * max((k / i - 1 - b), 0LL); } } cout << ans << "\n"; }