提交记录 13946


用户 题目 状态 得分 用时 内存 语言 代码长度
GetAWrongAnswer 1002i. 【模板题】多项式乘法 Accepted 100 73.171 ms 6700 KB C++11 1.29 KB
提交时间 评测时间
2020-08-13 19:15:41 2020-08-13 19:15:46
#include<bits/stdc++.h>
using namespace std;

#define reg register
typedef long long ll;
#define rep(i,a,b) for(reg int i=a,i##end=b;i<=i##end;++i)
#define drep(i,a,b) for(reg int i=a,i##end=b;i>=i##end;--i)

template <class T> inline void cmin(T &a,T b){ ((a>b)&&(a=b)); } 
template <class T> inline void cmax(T &a,T b){ ((a<b)&&(a=b)); } 

char IO;
int rd(){
	int s=0,f=0;
	while(!isdigit(IO=getchar())) if(IO=='-') f=1;
	do s=(s<<1)+(s<<3)+(IO^'0');
	while(isdigit(IO=getchar()));
	return f?-s:s;
}

const int N=(1<<21)+1,P=998244353;
const int g=3;

// Complex

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

ll qpow(ll x,ll k){
	ll res=1;
	for(;k;k>>=1,x=x*x%P) if(k&1) res=res*x%P;
	return res;
}

void FFT(int n,ll *a,int f) {
	rep(i,0,n-1) if(rev[i]>i) swap(a[i],a[rev[i]]);
	for(reg int i=1;i<n;i<<=1) {
		ll w=qpow(f==1?g:(P+1)/3,(P-1)/(i*2)),tmp;
		for(reg int l=0;l<n;l+=i*2) {
			ll e=1;
			for(reg int j=l;j<l+i;++j,e=e*w%P) {
				tmp=a[j+i]*e%P;
				a[j+i]=(a[j]-tmp)%P;
				a[j]=(a[j]+tmp)%P;
			}
		}
	}
}




int main(){
	n=rd(),m=rd();
	rep(i,0,n) a[i]=rd();
	rep(i,0,m) b[i]=rd();
	int R=1,c=0;
	while(R<=n+m) R<<=1,c++;
	rep(i,1,R-1) rev[i]=(rev[i>>1]>>1)|((i&1)<<(c-1));
	FFT(R,a,1),FFT(R,b,1);
	rep(i,0,R) a[i]=a[i]*b[i]%P;
	FFT(R,a,-1);
	ll base=qpow(R,P-2);
	rep(i,0,n+m) printf("%lld ",(a[i]*base%P+P)%P);
}




CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #135.85 us48 KBAcceptedScore: 0

Subtask #1 Testcase #271.943 ms6 MB + 476 KBAcceptedScore: 0

Subtask #1 Testcase #332.695 ms2 MB + 840 KBAcceptedScore: 100

Subtask #1 Testcase #432.695 ms2 MB + 828 KBAcceptedScore: 0

Subtask #1 Testcase #538.52 us48 KBAcceptedScore: 0

Subtask #1 Testcase #636.71 us48 KBAcceptedScore: 0

Subtask #1 Testcase #736.44 us48 KBAcceptedScore: 0

Subtask #1 Testcase #866.529 ms6 MB + 208 KBAcceptedScore: 0

Subtask #1 Testcase #966.511 ms6 MB + 208 KBAcceptedScore: 0

Subtask #1 Testcase #1061.052 ms5 MB + 964 KBAcceptedScore: 0

Subtask #1 Testcase #1172.388 ms6 MB + 556 KBAcceptedScore: 0

Subtask #1 Testcase #1273.171 ms5 MB + 436 KBAcceptedScore: 0

Subtask #1 Testcase #1335.03 us44 KBAcceptedScore: 0


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