提交记录 13345


用户 题目 状态 得分 用时 内存 语言 代码长度
colazcy 1002i. 【模板题】多项式乘法 Accepted 100 68.207 ms 10784 KB C++11 1.42 KB
提交时间 评测时间
2020-08-01 11:21:29 2020-08-01 11:21:34
#include <cstdio>
#include <cmath>
#include <algorithm>
using namespace std;
const int maxn = 2e6 + 100;
const double pi = acos(-1);
struct complex{
    double x,y;
    complex operator + (const complex &rhs)const{return complex{x + rhs.x,y + rhs.y};}
    complex operator - (const complex &rhs)const{return complex{x - rhs.x,y - rhs.y};}
    complex operator * (const complex &rhs)const{return complex{x * rhs.x - y * rhs.y,x * rhs.y + y * rhs.x};}
}F[maxn << 1],G[maxn << 1];
int tr[maxn << 1],n,m;
inline void fft(complex *f,int flag){
    for(int i = 0;i < n;i++)
        if(i < tr[i])swap(f[i],f[tr[i]]);
    for(int p = 2;p <= n;p <<= 1){
        int len = p >> 1;
        complex unit{cos(2 * pi / p),sin(2 * pi / p) * flag};
        for(int k = 0;k < n;k += p){
            complex g{1,0};
            for(int l = k;l < k + len;l++){
                complex t = f[l + len] * g;
                f[l + len] = f[l] - t;
                f[l] = f[l] + t;
                g = g * unit;
            }
        }
    }
}
int main(){
    scanf("%d %d",&n,&m);
    for(int i = 0;i <= n;i++)scanf("%lf",&F[i].x);
    for(int i = 0;i <= m;i++)scanf("%lf",&G[i].x);
    for(m += n,n = 1;n <= m;n <<= 1);
    for(int i = 0;i < n;i++)
        tr[i] = (tr[i >> 1] >> 1) | ((i & 1) ? (n >> 1) : 0);
    fft(F,1),fft(G,1);
    for(int i = 0;i < n;i++)F[i] = F[i] * G[i];
    fft(F,-1);
    for(int i = 0;i <= m;i++)printf("%d ",(int)(F[i].x / n + 0.49));
    return 0;
}

CompilationN/AN/ACompile OKScore: N/A

Subtask #1 Testcase #111.03 us36 KBAcceptedScore: 0

Subtask #1 Testcase #267.967 ms10 MB + 464 KBAcceptedScore: 0

Subtask #1 Testcase #330.296 ms4 MB + 828 KBAcceptedScore: 100

Subtask #1 Testcase #430.316 ms4 MB + 816 KBAcceptedScore: 0

Subtask #1 Testcase #512.62 us36 KBAcceptedScore: 0

Subtask #1 Testcase #611.86 us36 KBAcceptedScore: 0

Subtask #1 Testcase #711.8 us36 KBAcceptedScore: 0

Subtask #1 Testcase #861.95 ms10 MB + 196 KBAcceptedScore: 0

Subtask #1 Testcase #961.886 ms10 MB + 196 KBAcceptedScore: 0

Subtask #1 Testcase #1055.859 ms9 MB + 952 KBAcceptedScore: 0

Subtask #1 Testcase #1168.207 ms10 MB + 544 KBAcceptedScore: 0

Subtask #1 Testcase #1268.151 ms9 MB + 424 KBAcceptedScore: 0

Subtask #1 Testcase #1310.73 us36 KBAcceptedScore: 0


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