提交记录 13029


用户 题目 状态 得分 用时 内存 语言 代码长度
top_secret 1002i. 【模板题】多项式乘法 Accepted 100 69.663 ms 4652 KB C++ 1.40 KB
提交时间 评测时间
2020-07-19 11:34:10 2020-08-01 03:03:28
#include <bits/stdc++.h>
//#define int long long
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define FOR(i,a,b) for (int i = a; i < b; ++i)
#define ROF(i,a,b) for (int i = (b)-1; i >= a; --i)
#define debug(x) cout << #x << " = " << x << endl
#define FIO(x) \
	freopen(x ".in", "r", stdin); \
	freopen(x ".out", "w", stdout);
using namespace std;

typedef vector<int> vi;
typedef pair<int,int> pii;
typedef long long ll;

const int N=1<<21|1,mo=998244353;
inline int poww(int x,int y){int ans=1;for(;y;y>>=1,x=1ll*x*x%mo)if(y&1)ans=1ll*ans*x%mo;return ans;}
inline void red(int&x){x+=x>>31&mo;}
struct NTT{
	int b[N],wn[N],l,invl;
	inline void ini(int n){
		invl=poww(l=n,mo-2);int i;
		for(i=1;i<l;++i)b[i]=b[i>>1]>>1|(i&1?l>>1:0);
	}
	inline void DFT(int*a,int key){
		int i,j,k,m,u,w,wn;
		for(i=0;i<l;++i)if(i<b[i])swap(a[i],a[b[i]]);
		for(i=2;i<=l;i<<=1){
			for(m=i>>1,j=0,wn=poww(3,(mo-1)/i);j<l;j+=i)for(k=0,w=1;k<m;++k,w=1ll*w*wn%mo)u=1ll*w*a[j+k+m]%mo,
				red(a[j+k+m]=a[j+k]-u),red(a[j+k]+=u-mo);
		}
		if(key==-1)for(i=0,std::reverse(a+1,a+l);i<l;++i)a[i]=1ll*a[i]*invl%mo;
	}
}F;

int n,m,a[N],b[N];

signed main() {
#ifndef ONLINE_JUDGE
	FIO("c");
#endif
	scanf("%d%d",&n,&m);
	FOR(i,0,n+1)scanf("%d",a+i);
	FOR(i,0,m+1)scanf("%d",b+i);
	int l=1;while(l<=n+m+1) l<<=1;
	F.ini(l);
	F.DFT(a,1);F.DFT(b,1);
	FOR(i,0,l)a[i]=1ll*a[i]*b[i]%mo;
	F.DFT(a,-1);
	FOR(i,0,n+m+1)printf("%d ",a[i]);
}

CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #136.58 us48 KBAcceptedScore: 0

Subtask #1 Testcase #269.163 ms4 MB + 476 KBAcceptedScore: 100

Subtask #1 Testcase #332.078 ms1 MB + 840 KBAcceptedScore: 0

Subtask #1 Testcase #432.248 ms1 MB + 828 KBAcceptedScore: 0

Subtask #1 Testcase #540.59 us48 KBAcceptedScore: 0

Subtask #1 Testcase #639.03 us48 KBAcceptedScore: 0

Subtask #1 Testcase #738.08 us48 KBAcceptedScore: 0

Subtask #1 Testcase #864.381 ms4 MB + 208 KBAcceptedScore: 0

Subtask #1 Testcase #964.191 ms4 MB + 208 KBAcceptedScore: 0

Subtask #1 Testcase #1058.083 ms3 MB + 964 KBAcceptedScore: 0

Subtask #1 Testcase #1169.663 ms4 MB + 556 KBAcceptedScore: 0

Subtask #1 Testcase #1269.527 ms3 MB + 436 KBAcceptedScore: 0

Subtask #1 Testcase #1336.47 us48 KBAcceptedScore: 0


Judge Duck Online | 评测鸭在线
Server Time: 2026-03-25 01:06:07 | Loaded in 1 ms | Server Status
个人娱乐项目,仅供学习交流使用 | 捐赠