提交记录 7921


用户 题目 状态 得分 用时 内存 语言 代码长度
4182_543_731 1002i. 【模板题】多项式乘法 Accepted 100 72.839 ms 5656 KB C++ 1.02 KB
提交时间 评测时间
2019-01-25 19:51:17 2020-08-01 01:10:16
#include<cstdio>
using namespace std;
#define mod 998244353
#define N 2100000
int a[N],b[N],n,m,s,rev[N],ntt[N];
int pw(int a,int p){int ans=1;while(p){if(p&1)ans=1ll*ans*a%mod;a=1ll*a*a%mod;p>>=1;}return ans;}
void dft(int s,int *a,int t)
{
    for(int i=0;i<s;i++)ntt[rev[i]]=a[i];
    for(int l=2;l<=s;l<<=1)
    {
        int st=pw(3,(mod-1)/l);
        if(t==-1)st=pw(st,mod-2);
        for(int j=0;j<s;j+=l)
            for(int k=j,s2=1;k<j+(l>>1);k++,s2=1ll*s2*st%mod)
            {
                int a1=ntt[k],a2=1ll*ntt[k+(l>>1)]*s2%mod;
                ntt[k]=(a1+a2)%mod;ntt[k+(l>>1)]=(a1-a2+mod)%mod;
            }
    }
    int inv=pw(s,t-1?mod-2:0);
    for(int i=0;i<s;i++)a[i]=1ll*ntt[i]*inv%mod;
}
int main()
{
    scanf("%d%d",&n,&m);
    for(int i=0;i<=n;i++)scanf("%d",&a[i]);
    for(int i=0;i<=m;i++)scanf("%d",&b[i]);
    int s=1;while(s<=n+m)s<<=1;for(int i=0;i<s;i++)rev[i]=rev[i/2]/2+(i&1)*s/2;dft(s,a,1);dft(s,b,1);for(int i=0;i<s;i++)a[i]=1ll*a[i]*b[i]%mod;dft(s,a,-1);for(int i=0;i<=n+m;i++)printf("%d ",a[i]);
}

CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #111.23 us32 KBAcceptedScore: 0

Subtask #1 Testcase #272.494 ms5 MB + 456 KBAcceptedScore: 100

Subtask #1 Testcase #333.469 ms2 MB + 308 KBAcceptedScore: 0

Subtask #1 Testcase #433.524 ms2 MB + 296 KBAcceptedScore: 0

Subtask #1 Testcase #513.09 us32 KBAcceptedScore: 0

Subtask #1 Testcase #610.69 us32 KBAcceptedScore: 0

Subtask #1 Testcase #711.65 us32 KBAcceptedScore: 0

Subtask #1 Testcase #866.896 ms5 MB + 188 KBAcceptedScore: 0

Subtask #1 Testcase #966.719 ms5 MB + 188 KBAcceptedScore: 0

Subtask #1 Testcase #1061.002 ms4 MB + 944 KBAcceptedScore: 0

Subtask #1 Testcase #1172.839 ms5 MB + 536 KBAcceptedScore: 0

Subtask #1 Testcase #1272.619 ms4 MB + 416 KBAcceptedScore: 0

Subtask #1 Testcase #139.96 us32 KBAcceptedScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2024-04-25 18:13:40 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用