#include #include using namespace atcoder; #define rep(i, n) for (int i = 0; i < (n); ++i) using namespace std; using mint = modint; int main() { int n, p; cin >> n >> p; mint::set_mod(p); vector v; for (int a = 1; a <= 9; ++a) { rep(b, 10)rep(c, 10) { int k = 110000*a + 1001*b + 110*c; for (int x = k; x <= n; x += k) { v.push_back(x); } } } sort(v.begin(), v.end()); v.erase(unique(v.begin(), v.end()), v.end()); mint ans; for (int x : v) ans -= x; cout << ans.val() << '\n'; return 0; }