#include"bits/stdc++.h"
using namespace std;
int n,p;
int inv[3000001]={0,1};
signed main()
{
cin>>n;
cin>>p;
cout<<1<<'\n';
for(int i=2;i<=n;i++)
{
inv[i]=(p-p/i)*inv[p%i]%p;
cout<<inv[i]<<'\n';
}
}
#include"bits/stdc++.h"
using namespace std;
int n;
long long p;
int inv[3000001]={0,1};
signed main()
{
cin>>n;
cin>>p;
cout<<1<<'\n';
for(int i=2;i<=n;i++)
{
inv[i]=(p-p/i)*inv[p%i]%p;
cout<<inv[i]<<'\n';
}
}
上面两份代码只是把p的int换成long long就过了,但wa的点数据p在int范围内,蒟蒻不懂为什么