是不是有什么问题?
#pragma GCC optimize(3)
#include<iostream>
#include<algorithm>
#include<set>
#include<cmath>
#include<memory.h>
#include<queue>
#include<cstdio>
#include<vector>
#define int long long
using namespace std;
inline int read(){
int f=1,x=0;
char c;
c=getchar();
if(c=='-'){
f=-1;
c=getchar();
}
while('0'<=c&&c<='9'){
x*=10;
x+=(c-'0');
c=getchar();
}
return x*f;
}
int n,p;
int inv[6000005]={0,1};
int mod(int a,int b){
return (a%b+b)%b;
}
int fac(int a,int p){
if(inv[a]){
return inv[a];
}
inv[a]=mod(-p/a*fac(p%a,p),p);
return inv[a];
}
signed main(){
n=read();
p=read();
for(int i=1;i<=n;i++){
cout<<fac(i,p)<<endl;
}
return 0;
}