#include #include #include #include using namespace std; using mint=atcoder::modint; int N,P; mint dp[3<<17]; vectoryaku[3<<17]; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); cin>>N>>P; mint::set_mod(P); mint sum=0; for(int b=1;b<=N;b++)for(int a=b;a<=N;a+=b)yaku[a].push_back(b); for(int a=3;a<=N;a++) { mint c=0; for(int b:yaku[a]) //for(int b=1;b<=a;b++)if(a%b==0) { sum-=dp[a-b]; c++; } //dp[a] = 1 + (sum + c * dp[a])/a dp[a]=(a+sum)/(a-c); sum+=c*dp[a]; } cout<