递归求解即可
#include
using namespace std;
#define int long long
namespace NTT {
#define pw(n) (1<
const int N=4000005; // 4 times!
const int mod=998244353,g=3;
int n,m,bit,bitnum,a[N+5],b[N+5],rev[N+5];
void getrev(int l){
for(int i=0;i
rev[i]=(rev[i>>1]>>1)|((i&1)<
}
}
int fastpow(int a,int b){
int ans=1;
for(;b;b>>=1,a=1LL*a*a%mod){
if(b&1)ans=1LL*ans*a%mod;
}
return ans;
}
void NTT(int *s,int op){
for(int i=0;i
for(int i=1;i
int w=fastpow(g,(mod-1)/(i<&l