#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll maxn=4e6+10;
const ll mod=998244353, G=3, Gi=332748118;
inline ll read(){
ll x; scanf("%lld", &x);
return x;
}
inline ll qpow(ll a,ll b){
ll ans=1, base=a;
while(b){
if(b&1) ans=ans*base%mod;
base=base*base%mod;
b>>=1;
}
return ans;
}
ll n,m,limit=1,L,r[maxn],a[maxn],b[maxn];
void NTT(ll *A, ll type){
for(ll i=0;i<limit;i++)
if(i<r[i]) swap(A[i], A[r[i]]);
for(ll mid=1;mid<limit;mid*=2){
ll Wn = qpow( type==1 ? G : Gi, (mod-1)/(mid*2));
for(ll j=0;j<limit;j+=mid*2){
ll w = 1;
for(ll k=0;k<mid;k++,w=(w*Wn)%mod){
ll x=A[j+k], y=w*A[j+k+mid]%mod;
A[j+k]=(x+y)%mod;
A[j+k+mid]=(x-y+mod)%mod;
}
}
}
}
int main(){
n=read(), m=read();
for(ll i=0;i<=n;i++) a[i]=(read()+mod)%mod;
for(ll i=0;i<=m;i++) b[i]=(read()+mod)%mod;
while(limit<=n+m) limit*=2, L++;
for(ll i=0;i<limit;i++) r[i]=(r[i>>1]>>1)|((i&1)<<(L-1));
NTT(a, 1); NTT(b, 1);
for(ll i=0;i<limit;i++) a[i]=a[i]*b[i];
NTT(a, -1);
ll inv = qpow(limit, mod-2);
for(ll i=0;i<=n+m;i++)
printf("%lld ", (a[i]*inv)%mod);
return 0;
}
Compilation | N/A | N/A | Compile OK | Score: N/A | 显示更多 |
Subtask #1 Testcase #1 | 36.49 us | 48 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #2 | 72.783 ms | 7 MB + 476 KB | Accepted | Score: 100 | 显示更多 |
Subtask #1 Testcase #3 | 34.213 ms | 3 MB + 328 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #4 | 34.16 ms | 3 MB + 316 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #5 | 39.34 us | 48 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #6 | 37.12 us | 48 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #7 | 37.34 us | 48 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #8 | 66.814 ms | 7 MB + 208 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #9 | 66.975 ms | 7 MB + 208 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #10 | 60.872 ms | 6 MB + 964 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #11 | 73.298 ms | 7 MB + 556 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #12 | 73.945 ms | 6 MB + 436 KB | Accepted | Score: 0 | 显示更多 |
Subtask #1 Testcase #13 | 35.42 us | 48 KB | Accepted | Score: 0 | 显示更多 |