提交记录 13006


用户 题目 状态 得分 用时 内存 语言 代码长度
top_secret 1002i. 【模板题】多项式乘法 Accepted 100 63.032 ms 6196 KB C++ 1.49 KB
提交时间 评测时间
2020-07-19 09:57:51 2020-08-01 03:02:56
#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=(ll)x*x%mo)if(y&1)ans=(ll)ans*x%mo;return ans;}
inline void red(int&x){x%=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);
		for(i=2,wn[*wn=1]=poww(3,(mo-1)/l);i<=l;++i)wn[i]=(ll)wn[1]*wn[i-1]%mo;
	}
	inline void DFT(int*a,int key){
		static int w[N];int i,j,k,m,u;
		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=k=0;k<m;++k,j+=l/i)w[k]=wn[j];
			for(j=0;j<l;j+=i)for(k=0;k<m;++k)u=(ll)w[k]*a[j+k+m]%mo,
				red(a[j+k+m]=a[j+k]-u),red(a[j+k]+=u);
		}
		if(key==-1)for(i=0,std::reverse(a+1,a+l);i<l;++i)a[i]=(ll)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]=(ll)a[i]*b[i]%mo;
	F.DFT(a,-1);
	FOR(i,0,n+m+1)printf("%d ",(a[i]+mo)%mo);
}

CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #138.65 us56 KBAcceptedScore: 0

Subtask #1 Testcase #262.603 ms5 MB + 996 KBAcceptedScore: 100

Subtask #1 Testcase #328.763 ms2 MB + 592 KBAcceptedScore: 0

Subtask #1 Testcase #428.721 ms2 MB + 580 KBAcceptedScore: 0

Subtask #1 Testcase #542.28 us56 KBAcceptedScore: 0

Subtask #1 Testcase #639.77 us56 KBAcceptedScore: 0

Subtask #1 Testcase #739.63 us56 KBAcceptedScore: 0

Subtask #1 Testcase #856.755 ms5 MB + 728 KBAcceptedScore: 0

Subtask #1 Testcase #956.813 ms5 MB + 728 KBAcceptedScore: 0

Subtask #1 Testcase #1051.097 ms5 MB + 460 KBAcceptedScore: 0

Subtask #1 Testcase #1162.843 ms6 MB + 52 KBAcceptedScore: 0

Subtask #1 Testcase #1263.032 ms4 MB + 956 KBAcceptedScore: 0

Subtask #1 Testcase #1338.41 us56 KBAcceptedScore: 0


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