线性求逆元模板
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<queue>
using namespace std;
typedef pair<int,int> pii;
typedef long long ll ;
const int N=3e6+10;
int n,m,s,t,k,p;
int f[N];
int cnt;
int Inv[N]={0,1};
inline ll mod(ll a,ll p)
{
return (a%p+p)%p;
}
ll inv(ll a,ll p)
{
if(Inv[a]) return Inv[a];
Inv[a]=mod((-p/a*inv(p%a,p)),p);
return Inv[a];
}
int main()
{
cin>>n>>p;
for(int i=1;i<=n;i++)
{
printf("%d\n",inv(i,p));
}
return 0;
}