#include using namespace std; #include #include void dft(vector >&A,int sign) { int N=A.size()>>1; if(N==0)return; vector >F(N),G(N); for(int i=0;iz(cos(M_PI/N),sin(M_PI/N)*sign),p=1; for(int i=0;imultiply(const vector&A,const vector&B) { if(A.empty()||B.empty()) { return(vector){}; } int N=1; vectorret(A.size()+B.size()-1); while(N >F(N),G(N); for(int i=0;iA(N+1),B(N+1); for(int i=0;iC=multiply(A,B); int Q;scanf("%d",&Q); for(int i=0;i