日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

多项式基础操作 - 学习笔记

發布時間:2025/4/16 编程问答 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 多项式基础操作 - 学习笔记 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文鏈接https://www.cnblogs.com/zhouzhendong/p/polynomial.html?

下載鏈接:

多項式基礎操作

#include <bits/stdc++.h> using namespace std; typedef long long LL; LL read(){LL x=0,f=0;char ch=getchar();while (!isdigit(ch))f|=ch=='-',ch=getchar();while (isdigit(ch))x=(x<<1)+(x<<3)+(ch^48),ch=getchar();return f?-x:x; } const int N=1<<18,mod=998244353; void Add(int &x,int y){if ((x+=y)>=mod)x-=mod; } void Del(int &x,int y){if ((x-=y)<0)x+=mod; } int del(int x,int y){return x-y<0?x-y+mod:x-y; } int Pow(int x,int y){int ans=1;for (;y;y>>=1,x=(LL)x*x%mod)if (y&1)ans=(LL)ans*x%mod;return ans; } int randint(){return ((rand()&65535)<<15)^(rand()&65535); } namespace Rem2{int INIT_TAG=0;int t,w;#define fi first#define se secondvoid init(){INIT_TAG=1;srand('C'+'L'+'Y'+'A'+'K'+'I'+'O'+'I');}pair <int,int> Mul_pii(pair <int,int> A,pair <int,int> B){static int a,b;a=((LL)A.fi*B.fi+(LL)A.se*B.se%mod*w)%mod;b=((LL)A.fi*B.se+(LL)A.se*B.fi)%mod;return make_pair(a,b);}pair <int,int> Pow_pii(pair <int,int> x,int y){pair <int,int> ans=make_pair(1,0);for (;y;y>>=1,x=Mul_pii(x,x))if (y&1)ans=Mul_pii(ans,x);return ans;}int Sqrt(int x){if (!INIT_TAG)init();if (x==0)return 0;if (Pow(x,(mod-1)/2)!=1)return -1;do {t=randint()%(mod-1)+1;w=((LL)t*t+mod-x)%mod;} while (Pow(w,(mod-1)/2)==1);pair <int,int> res=Pow_pii(make_pair(t,1),(mod+1)/2);return min(res.fi,mod-res.fi);} } namespace Polynomial{namespace Fast{const int N=1<<18;int n,Log[N+1],Fac[N+1],InvFac[N+1],Inv[N+1];int ww[N*2],*Ew=ww,*w[N+1];int iww[N*2],*Ei=iww,*iw[N+1];int INIT_TAG=0;void init(int _n){INIT_TAG=1;Log[1]=0,n=_n;for (int i=2;i<=N;i++)Log[i]=Log[i>>1]+1;for (int i=Fac[0]=1;i<=N;i++)Fac[i]=(LL)Fac[i-1]*i%mod;InvFac[N]=Pow(Fac[N],mod-2);for (int i=N;i>=1;i--)InvFac[i-1]=(LL)InvFac[i]*i%mod;for (int i=1;i<=N;i++)Inv[i]=(LL)InvFac[i]*Fac[i-1]%mod;for (int d=0;d<=Log[n];d++){w[d]=Ew,iw[d]=Ei;int n=1<<d;w[d][0]=1,w[d][1]=Pow(3,(mod-1)/n);for (int i=2;i<n;i++)w[d][i]=(LL)w[d][i-1]*w[d][1]%mod;iw[d][0]=1,iw[d][1]=Pow(w[d][1],mod-2);for (int i=2;i<n;i++)iw[d][i]=(LL)iw[d][i-1]*iw[d][1]%mod;Ew+=n,Ei+=n;}}int Rev[N+1],A[N+1],B[N+1];void FFT(int a[],int n,int **w){if (!INIT_TAG)init(N);for (int i=0;i<n;i++)if (Rev[i]<i)swap(a[i],a[Rev[i]]);for (int t=1,d=1;d<n;t++,d<<=1)for (int i=0;i<n;i+=(d<<1))for (int j=0,*W=w[t];j<d;j++){int tmp=(LL)(*W++)*a[i+j+d]%mod;a[i+j+d]=del(a[i+j],tmp);Add(a[i+j],tmp);}}vector <int> Mul(vector <int> &a,vector <int> &b){static vector <int> res;res.clear();LL Br=(LL)a.size()*b.size();LL FF=(a.size()+b.size())*Log[a.size()+b.size()]*10+100;if (Br<=FF){for (int i=0;i<a.size()+b.size();i++)res.push_back(0);for (int i=0;i<a.size();i++)for (int j=0;j<b.size();j++)res[i+j]=((LL)a[i]*b[j]+res[i+j])%mod;}else {int n=1,d=0;for (;n<a.size()+b.size();n<<=1,d++);for (int i=0;i<n;i++)Rev[i]=(Rev[i>>1]>>1)|((i&1)<<(d-1)),A[i]=B[i]=0;for (int i=0;i<a.size();i++)A[i]=a[i];for (int i=0;i<b.size();i++)B[i]=b[i]; // w[0]=1,w[1]=Pow(3,(mod-1)/n); // for (int i=2;i<n;i++) // w[i]=(LL)w[i-1]*w[1]%mod; FFT(A,n,w),FFT(B,n,w);for (int i=0;i<n;i++)A[i]=(LL)A[i]*B[i]%mod; // w[1]=Pow(w[1],mod-2); // for (int i=2;i<n;i++) // w[i]=(LL)w[i-1]*w[1]%mod; FFT(A,n,iw);int inv=Pow(n,mod-2);for (int i=0;i<n;i++)res.push_back((int)((LL)inv*A[i]%mod));}while (!res.empty()&&!res.back())res.pop_back();return res;}vector <int> MulInv(vector <int> &a,vector <int> &b){static vector <int> res;res.clear();int n=1,d=0;for (;n<a.size()*2+b.size();n<<=1,d++);for (int i=0;i<n;i++)Rev[i]=(Rev[i>>1]>>1)|((i&1)<<(d-1)),A[i]=B[i]=0;for (int i=0;i<a.size();i++)A[i]=a[i];for (int i=0;i<b.size();i++)B[i]=b[i]; // w[0]=1,w[1]=Pow(3,(mod-1)/n); // for (int i=2;i<n;i++) // w[i]=(LL)w[i-1]*w[1]%mod; FFT(A,n,w),FFT(B,n,w);for (int i=0;i<n;i++)A[i]=(LL)A[i]*A[i]%mod*B[i]%mod; // w[1]=Pow(w[1],mod-2); // for (int i=2;i<n;i++) // w[i]=(LL)w[i-1]*w[1]%mod; FFT(A,n,iw);int inv=Pow(n,mod-2);for (int i=0;i<n;i++)res.push_back((int)((LL)inv*A[i]%mod));while (!res.empty()&&!res.back())res.pop_back();return res;}}struct Poly{vector <int> v;Poly(){v.clear();}Poly(int x){v.clear();v.push_back(x);}Poly(vector <int> x){v=x;}int operator ()(int x){int ans=0,y=1;for (int i=0;i<v.size();i++)ans=((LL)v[i]*y+ans)%mod,y=(LL)y*x%mod;return ans;}int size(){return v.size();}void print(){for (int i=0;i<v.size();i++)printf("%d ",v[i]);}void print(int x){for (int i=0;i<x;i++)printf("%d ",i>=v.size()?0:v[i]);}void print(string s){print(),cout << s;}void clear(){v.clear();}void push_back(int x){v.push_back(x);}void pop_back(){v.pop_back();}int empty(){return v.empty();}int back(){return v.back();}int &operator [](int x){return v[x];}void operator += (Poly A){while (v.size()<A.size())v.push_back(0);for (int i=0;i<A.size();i++)Add(v[i],A[i]);}void operator -= (Poly &A){while (v.size()<A.size())v.push_back(0);for (int i=0;i<A.size();i++)Del(v[i],A[i]);}void operator *= (Poly &A);void Derivation(){for (int i=0;i<v.size()-1;i++)v[i]=(LL)v[i+1]*(i+1)%mod;v.pop_back();}void Integral(){v.push_back(0);for (int i=v.size()-2;i>=0;i--)v[i+1]=(LL)v[i]*Fast :: Inv[i+1]%mod;v[0]=0;}void operator *= (int x){for (int i=0;i<v.size();i++)v[i]=(LL)v[i]*x%mod;}}pp;//struct Poly end-------------Poly operator + (Poly A,Poly B){pp.clear();for (int i=0;i<max(A.size(),B.size());i++)pp.push_back(0);for (int i=0;i<A.size();i++)Add(pp[i],A[i]);for (int i=0;i<B.size();i++)Add(pp[i],B[i]);return pp;}Poly operator - (Poly A,Poly B){pp.clear();for (int i=0;i<max(A.size(),B.size());i++)pp.push_back(0);for (int i=0;i<A.size();i++)Add(pp[i],A[i]);for (int i=0;i<B.size();i++)Del(pp[i],B[i]);return pp;}Poly operator * (Poly A,Poly B){return Poly(Fast :: Mul(A.v,B.v));}void Poly :: operator *= (Poly &A){v=Fast :: Mul(v,A.v);}Poly operator * (Poly A,int x){pp=A;for (int i=0;i<A.size();i++)pp[i]=(LL)pp[i]*x%mod;return pp;}Poly Inverse(Poly a,int n);Poly operator / (Poly A,Poly B){//Divideint n=A.size(),m=B.size();reverse(A.v.begin(),A.v.end());reverse(B.v.begin(),B.v.end());int k=n-m+1;if (k<0)return Poly(0);while (A.size()>k)A.pop_back();while (B.size()>k)B.pop_back();A=A*Inverse(B,k);while (A.size()>k)A.pop_back();reverse(A.v.begin(),A.v.end());return A;}Poly operator % (Poly A,Poly B){//Modulowhile (!A.empty()&&!A.back())A.pop_back();while (!B.empty()&&!B.back())B.pop_back();A=A-A/B*B;while (A.size()>=B.size())A.pop_back();while (!A.empty()&&!A.back())A.pop_back();return A;}Poly Derivation(Poly A){for (int i=0;i<A.size()-1;i++)A[i]=(LL)A[i+1]*(i+1)%mod;A.pop_back();return A;}Poly Integral(Poly A){A.push_back(0);for (int i=A.size()-2;i>=0;i--)A[i+1]=(LL)A[i]*Fast :: Inv[i+1]%mod;A[0]=0;return A;}Poly Inverse(Poly a,int n){static Poly A,B;while (!a.empty()&&!a.back())a.pop_back();if (a.empty())return a;A.clear(),B.clear();B.push_back(a[0]);A.push_back(Pow(B[0],mod-2));for (int t=1;t<n;){for (int i=t;i<min(a.size(),(t<<1));i++)B.push_back(a[i]);t<<=1;A=A*2-Poly(Fast :: MulInv(A.v,B.v));while (A.size()>t)A.pop_back();}while (A.size()>n)A.pop_back();return A;}Poly Sqrt(Poly a,int n){static Poly A,B;while (!a.empty()&&!a.back())a.pop_back();if (a.empty())return a;A.clear(),B.clear();B.push_back(a[0]);A.push_back(Rem2 :: Sqrt(B[0]));for (int t=1;t<n;){for (int i=t;i<min(a.size(),(t<<1));i++)B.push_back(a[i]);t<<=1;A+=B*Inverse(A,t);while (A.size()>t)A.pop_back();A*=499122177;}if (A[0]>mod-A[0])for (int i=0;i<A.size();i++)A[i]=(mod-A[i])%mod;while (A.size()>n)A.pop_back();return A;}Poly Ln(Poly a,int n){while (!a.empty()&&!a.back())a.pop_back();if (a.empty()||a[0]!=1)return a;a=Integral(Derivation(a)*Inverse(a,n));while (a.size()>n)a.pop_back();return a;}Poly Exp(Poly a,int n){static Poly A,B;while (!a.empty()&&!a.back())a.pop_back();if (a.empty())return Poly(1);if (a[0]!=0)return a;A.clear(),B.clear();B.push_back(1);A.push_back(a[0]);for (int t=1;t<n;){for (int i=t;i<min(a.size(),(t<<1));i++)A.push_back(a[i]);t<<=1;B=B*(Poly(1)+A-Ln(B,t));while (B.size()>t)B.pop_back();}while (B.size()>n)B.pop_back();return B;}Poly PolyPow(Poly x,int y,int n){static Poly A,B;int k0=0,kc,ivkc;while (!x.empty()&&!x.back())x.pop_back();if (x.empty())return x;while (k0<x.size()&&x[k0]==0)k0++;kc=x[k0],ivkc=Pow(kc,mod-2);A.clear();for (int i=k0;i<x.size();i++)A.push_back((int)((LL)x[i]*ivkc%mod));A=Exp(Ln(A,n)*y,n);B.clear();if ((LL)k0*y>=n)return B;kc=Pow(kc,y),k0*=y;for (int i=0;i<k0;i++)B.push_back(0);for (int i=0;i<min(A.size(),n-k0);i++)B.push_back((int)((LL)A[i]*kc%mod));while (B.size()>n)B.pop_back();return B;}namespace Qiuzhi{Poly P[N<<2],f[N<<2],M;vector <int> x,y;int n;void GetP(int rt,int L,int R){if (L==R){P[rt].clear();P[rt].push_back((mod-x[L])%mod);P[rt].push_back(1);return;}int mid=(L+R)>>1,ls=rt<<1,rs=ls|1;GetP(ls,L,mid);GetP(rs,mid+1,R);P[rt]=P[ls]*P[rs];}void qiuzhi(int rt,int L,int R){if (f[rt].empty())f[rt].push_back(0);if (L==R)return (void)(y[L]=f[rt][0]);int mid=(L+R)>>1,ls=rt<<1,rs=ls|1;f[ls]=f[rt]%P[ls];f[rs]=f[rt]%P[rs];qiuzhi(ls,L,mid);qiuzhi(rs,mid+1,R);}vector <int> Get_Val(vector <int> A,Poly F){n=A.size();x.clear(),y.clear();for (int i=0;i<n;i++){x.push_back(A[i]);y.push_back(0);}GetP(1,0,n-1);f[1]=F;qiuzhi(1,0,n-1);return y;}}namespace Chazhi{Poly P[N<<2],M;vector <int> x,y;int n;void GetP(int rt,int L,int R){if (L==R){P[rt].clear();P[rt].push_back((mod-x[L])%mod);P[rt].push_back(1);return;}int mid=(L+R)>>1,ls=rt<<1,rs=ls|1;GetP(ls,L,mid);GetP(rs,mid+1,R);P[rt]=P[ls]*P[rs];}Poly chazhi(int rt,int L,int R){if (L==R)return Poly(y[L]);int mid=(L+R)>>1,ls=rt<<1,rs=ls|1;return chazhi(ls,L,mid)*P[rs]+chazhi(rs,mid+1,R)*P[ls];}Poly Get_Poly(vector <int> A,vector <int> B){n=A.size();x=A;int Product=1;GetP(1,0,n-1);M=Derivation(P[1]);y=Qiuzhi :: Get_Val(A,M);for (int i=0;i<y.size();i++)y[i]=(LL)B[i]*Pow(y[i],mod-2)%mod;return chazhi(1,0,n-1);}} }// be careful about init!!!!!! using namespace Polynomial; Poly A,B; vector <int> x,y; int main(){int n=read()+1,k=read();A.clear();for (int i=0;i<n;i++)A.push_back(read());B=Exp(Integral(Inverse(Sqrt(A,n),n)),n);B=Poly(1)+Ln(Poly(2)+A-A(0)-B,n);B=Derivation(PolyPow(B,k,n));n--;B.print(n);return 0; } Polynomial

?

UPD(2019-03-12): 感謝神仙cly的指出。已更。

UPD(2019-04-21): 補一個相對好寫一些的LOJ#150板子。

#include <bits/stdc++.h> #define clr(x) memset(x,0,sizeof (x)) #define clrint(x,n) memset(x,0,(n)<<2) #define cpyint(a,b,n) memcpy(a,b,(n)<<2) #define For(i,a,b) for (int i=a;i<=b;i++) #define Fod(i,b,a) for (int i=b;i>=a;i--) #define pb(x) push_back(x) #define mp(x,y) make_pair(x,y) #define fi first #define se second #define real __zzd001 #define _SEED_ ('C'+'L'+'Y'+'A'+'K'+'I'+'O'+'I') #define outval(x) printf(#x" = %d\n",x) #define outvec(x) printf("vec "#x" = ");for (auto _v : x)printf("%d ",_v);puts("") #define outtag(x) puts("----------"#x"----------") #define outarr(a,L,R) printf(#a"[%d...%d] = ",L,R);\For(_v2,L,R)printf("%d ",a[_v2]);puts(""); using namespace std; typedef long long LL; typedef unsigned long long ULL; typedef vector <int> vi; LL read(){LL x=0,f=0;char ch=getchar();while (!isdigit(ch))f|=ch=='-',ch=getchar();while (isdigit(ch))x=(x<<1)+(x<<3)+(ch^48),ch=getchar();return f?-x:x; } const int N=1<<19,mod=998244353,inv2=(mod+1)>>1; const int YG=3; int Pow(int x,int y){int ans=1;for (;y;y>>=1,x=(LL)x*x%mod)if (y&1)ans=(LL)ans*x%mod;return ans; } void Add(int &x,int y){if ((x+=y)>=mod)x-=mod; } void Del(int &x,int y){if ((x-=y)<0)x+=mod; } int Add(int x){return x>=mod?x-mod:x; } int Del(int x){return x<0?x+mod:x; } namespace Math{int Iv[N];void prework(){int n=N-1;Iv[1]=1;For(i,2,n)Iv[i]=(LL)(mod-mod/i)*Iv[mod%i]%mod;}map <int,int> Map;int ind(int x){static int M,bas;if (Map.empty()){M=max((int)sqrt(mod),1);bas=Pow(YG,M);for (int i=1,v=YG;i<=M;i++,v=(LL)v*YG%mod)Map[v]=i;}for (int i=M,v=(LL)bas*Pow(x,mod-2)%mod;i<=mod-1+M;i+=M,v=(LL)v*bas%mod)if (Map[v])return i-Map[v];return -1;} } namespace fft{int w[N],R[N];int Log[N+1];void init(int n){if (!Log[2]){For(i,2,N)Log[i]=Log[i>>1]+1;}int d=Log[n];assert(n==(1<<d));For(i,0,n-1)R[i]=(R[i>>1]>>1)|((i&1)<<(d-1));w[0]=1,w[1]=Pow(YG,(mod-1)/n);For(i,2,n-1)w[i]=(LL)w[i-1]*w[1]%mod;}void FFT(int *a,int n,int flag){if (flag<0)reverse(w+1,w+n);For(i,0,n-1)if (i<R[i])swap(a[i],a[R[i]]);for (int t=n>>1,d=1;d<n;d<<=1,t>>=1)for (int i=0;i<n;i+=d<<1)for (int j=0;j<d;j++){int tmp=(LL)w[t*j]*a[i+j+d]%mod;a[i+j+d]=Del(a[i+j]-tmp);Add(a[i+j],tmp);}if (flag<0){reverse(w+1,w+n);int inv=Pow(n,mod-2);For(i,0,n-1)a[i]=(LL)a[i]*inv%mod;}}void CirMul(int *a,int *b,int *c,int n){init(n),FFT(a,n,1),FFT(b,n,1);For(i,0,n-1)c[i]=(LL)a[i]*b[i]%mod;FFT(c,n,-1);} } using fft::FFT; using fft::CirMul; int calc_up(int x){int n=1;while (n<=x)n<<=1;return n; } void Inv(int *a,int *b,int n){static int f[N],g[N];b[0]=Pow(a[0],mod-2);int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=0;cpyint(g,b,now),now<<=1,cpyint(f,a,min(n,now));fft::init(len);FFT(f,len,1),FFT(g,len,1);For(i,0,len-1)g[i]=(2LL*g[i]-(LL)f[i]*g[i]%mod*g[i]%mod+mod)%mod;FFT(g,len,-1);cpyint(b,g,min(n,now));} } int Sqrt(int a){int k=Math::ind(a);assert(~k&1);k=Pow(YG,k>>1);return min(k,mod-k); } void Sqrt(int *a,int *b,int n){static int f[N],g[N],h[N];b[0]=Sqrt(a[0]);int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=h[i]=0;cpyint(f,b,now),now<<=1,Inv(f,h,now),cpyint(g,a,min(n,now));CirMul(g,h,g,len);For(i,0,len-1)f[i]=((g[i]+f[i])&1)?Add(((LL)g[i]+f[i]+mod)>>1):((g[i]+f[i])>>1);cpyint(b,f,min(n,now));} } void Der(int *a,int n){For(i,0,n-2)a[i]=(LL)a[i+1]*(i+1)%mod;a[n-1]=0; } void Int(int *a,int n){if (!Math::Iv[1])Math::prework();Fod(i,n,1)a[i]=(LL)a[i-1]*Math::Iv[i]%mod;a[0]=0; } void Ln(int *a,int *b,int n){static int f[N],g[N];int len=calc_up(n*2);For(i,0,len-1)f[i]=g[i]=0;cpyint(f,a,n),Inv(f,g,n),Der(f,n);CirMul(f,g,f,len);Int(f,n),cpyint(b,f,n); } void Exp(int *a,int *b,int n){static int f[N],g[N],h[N];b[0]=1;int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=h[i]=0;cpyint(f,b,now),now<<=1,Ln(f,g,now),cpyint(h,a,min(n,now));For(i,0,now-1)g[i]=Del(h[i]-g[i]);Add(g[0],1);CirMul(f,g,f,len),cpyint(b,f,min(n,now));} } void Pow(int *a,int *b,int n,int k){static int f[N];clrint(b,n);if (k==0)return (void)(b[0]=1);int fir=0;for (;fir<n&&!a[fir];fir++);if ((LL)fir*k>=n)return;int m=n-fir*k;cpyint(f,a+fir,m);int t=Pow(f[0],k),it=Pow(f[0],mod-2);For(i,0,m-1)f[i]=(LL)f[i]*it%mod;Ln(f,f,m);For(i,0,m-1)f[i]=(LL)f[i]*k%mod;Exp(f,b+fir*k,m);For(i,fir*k,n-1)b[i]=(LL)b[i]*t%mod; } int n,k; int f[N],g[N],h[N]; int main(){n=read()+1,k=read();For(i,0,n-1)f[i]=read();Sqrt(f,g,n);Inv(g,h,n);Int(h,n);Exp(h,g,n);For(i,0,n-1)g[i]=Del(f[i]-g[i]);Add(g[0],2),Del(g[0],f[0]);Ln(g,h,n);Add(h[0],1);Pow(h,g,n,k);Der(g,n);For(i,0,n-2)printf("%d ",g[i]);puts("");return 0; } View Code

UPD(2019-04-21晚): 再加一個歷時56min Rush出來的板子。感覺看起來比上面那個更好看。相比之下唯一的缺點就是要手動調用一個 prework() 函數。

#include <bits/stdc++.h> #define clr(x) memset(x,0,sizeof x) #define cpyint(a,b,n) memcpy(a,b,(n)<<2) #define For(i,a,b) for (int i=a;i<=b;i++) #define Fod(i,b,a) for (int i=b;i>=a;i--) #define outval(x) printf(#x" = %d\n",x) #define outtag(x) puts("-------------"#x"-------------"); #define outarr(a,L,R) printf(#a"[%d..%d] = ",L,R);\For(_x,L,R)printf("%d ",a[_x]);puts("") using namespace std; typedef long long LL; LL read(){LL x=0,f=0;char ch=getchar();while (!isdigit(ch))f|=ch=='-',ch=getchar();while (isdigit(ch))x=(x<<1)+(x<<3)+(ch^48),ch=getchar();return f?-x:x; } const int N=1<<19,mod=998244353; int Pow(int x,int y){int ans=1;for (;y;y>>=1,x=(LL)x*x%mod)if (y&1)ans=(LL)ans*x%mod;return ans; } void Add(int &x,int y){if ((x+=y)>=mod)x-=mod; } void Del(int &x,int y){if ((x-=y)<0)x+=mod; } int Add(int x){return x>=mod?x-mod:x; } int Del(int x){return x<0?x+mod:x; } namespace fft{int w[N],R[N];void init(int n){int d=0;while ((1<<d)<n)d++;For(i,0,n-1)R[i]=(R[i>>1]>>1)|((i&1)<<(d-1));w[0]=1,w[1]=Pow(3,(mod-1)/n);For(i,2,n-1)w[i]=(LL)w[i-1]*w[1]%mod;}void FFT(int *a,int n,int flag){if (flag<0)reverse(w+1,w+n);For(i,0,n-1)if (i<R[i])swap(a[i],a[R[i]]);for (int t=n>>1,d=1;d<n;d<<=1,t>>=1)for (int i=0;i<n;i+=d<<1)for (int j=0;j<d;j++){int tmp=(LL)w[t*j]*a[i+j+d]%mod;a[i+j+d]=Del(a[i+j]-tmp);Add(a[i+j],tmp);}if (flag<0){reverse(w+1,w+n);int inv=Pow(n,mod-2);For(i,0,n-1)a[i]=(LL)a[i]*inv%mod;}}void Mul(int *a,int *b,int *c,int n){init(n),FFT(a,n,1),FFT(b,n,1);For(i,0,n-1)c[i]=(LL)a[i]*b[i]%mod;FFT(c,n,-1);} } using fft::FFT; using fft::Mul; int Iv[N]; void prework(){int n=N-1;Iv[1]=1;For(i,2,n)Iv[i]=(LL)(mod-mod/i)*Iv[mod%i]%mod; } int Ind(int x){static map <int,int> Map;static int M,bas;if (Map.empty()){M=(int)sqrt(mod);bas=Pow(3,M);for (int i=1,v=3;i<=M;i++,v=(LL)v*3%mod)Map[v]=i;}for (int i=M,v=(LL)bas*Pow(x,mod-2)%mod;i<=mod+M;i+=M,v=(LL)v*bas%mod)if (Map[v])return i-Map[v];return -1; } int calup(int x){int n=1;while (n<x)n<<=1;return n; } void Inv(int *a,int *b,int n){static int f[N],g[N];b[0]=Pow(a[0],mod-2);int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=0;cpyint(g,b,now),now<<=1,cpyint(f,a,min(n,now));fft::init(len),FFT(f,len,1),FFT(g,len,1);For(i,0,len-1)f[i]=(2LL*g[i]-(LL)f[i]*g[i]%mod*g[i]%mod+mod)%mod;FFT(f,len,-1);cpyint(b,f,min(n,now));} } int Sqrt(int x){int k=Ind(x);assert(~k&1);k=Pow(3,k>>1);return min(k,mod-k); } void Sqrt(int *a,int *b,int n){static int f[N],g[N],h[N];b[0]=Sqrt(a[0]);int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=h[i]=0;cpyint(f,b,now),now<<=1,Inv(f,g,now),cpyint(h,a,min(n,now));Mul(g,h,g,len);For(i,0,len-1)f[i]=Add(f[i]+g[i]),f[i]=(f[i]&1)?((f[i]+mod)>>1):(f[i]>>1);cpyint(b,f,min(n,now));} } void Der(int *a,int n){For(i,0,n-2)a[i]=(LL)a[i+1]*(i+1)%mod;a[n-1]=0; } void Int(int *a,int n){Fod(i,n,1)a[i]=(LL)a[i-1]*Iv[i]%mod;a[0]=0; } void Ln(int *a,int *b,int n){static int f[N],g[N];int len=calup(n<<1);For(i,0,len-1)f[i]=g[i]=0;cpyint(f,a,n),Inv(f,g,n),Der(f,n);Mul(f,g,f,len);Int(f,n),cpyint(b,f,n); } void Exp(int *a,int *b,int n){static int f[N],g[N],h[N];b[0]=1;int now=1;while (now<n){int len=now<<2;For(i,0,len-1)f[i]=g[i]=h[i]=0;cpyint(g,b,now),now<<=1,Ln(g,h,now),cpyint(f,a,min(n,now));For(i,0,now-1)Del(f[i],h[i]);Add(f[0],1);Mul(g,f,g,len);cpyint(b,g,min(n,now));} } void Pow(int *a,int *b,int n,int k){static int f[N],g[N];memset(b,0,sizeof(int)*n);if (k==0)return (void)(b[0]=1);int fir=0;for (;fir<n&&!a[fir];fir++);if ((LL)fir*k>=n)return;int m=n-fir*k;cpyint(f,a+fir,m);int t=Pow(f[0],k),it=Pow(f[0],mod-2);For(i,0,m-1)f[i]=(LL)f[i]*it%mod;Ln(f,g,m);For(i,0,m-1)g[i]=(LL)g[i]*k%mod;Exp(g,f,m);For(i,0,m-1)f[i]=(LL)f[i]*t%mod;cpyint(b+fir*k,f,m); } int n,k; int a[N],b[N],c[N],d[N]; int main(){prework();n=read()+1,k=read();For(i,0,n-1)a[i]=read();Sqrt(a,b,n);Inv(b,c,n);Int(c,n);Exp(c,b,n);For(i,0,n-1)b[i]=Del(a[i]-b[i]);Add(b[0],2),Del(b[0],a[0]);Ln(b,c,n);Add(c[0],1);Pow(c,b,n,k);Der(b,n);n--;For(i,0,n-1)printf("%d ",b[i]);puts("");return 0; } View Code

?

轉載于:https://www.cnblogs.com/zhouzhendong/p/Polynomial.html

總結

以上是生活随笔為你收集整理的多项式基础操作 - 学习笔记的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

国产91精品一区二区麻豆亚洲 | 中文字幕在线播放日韩 | 成人黄色电影在线 | 久久福利综合 | 中文字幕日韩国产 | 国产视频久 | 麻豆小视频在线观看 | 欧美激情视频一二三区 | 久久精品人人做人人综合老师 | 精品国产亚洲一区二区麻豆 | 网站免费黄色 | 2024国产精品视频 | 最近更新的中文字幕 | 91视频免费看 | 久久艹中文字幕 | 日韩有码网站 | 91香蕉视频 mp4 | 婷婷五天天在线视频 | 免费网站在线观看成人 | 久久成人午夜视频 | 天天干天天干天天干 | 国产在线欧美日韩 | 国产精品白虎 | 日韩v在线91成人自拍 | 成年美女黄网站色大片免费看 | 免费久久99精品国产婷婷六月 | 久久特级毛片 | 日韩久久午夜一级啪啪 | 国产免费大片 | 美女网站视频免费黄 | 狠狠色伊人亚洲综合成人 | 日日摸日日添日日躁av | 黄色亚洲免费 | 日韩精品在线播放 | 久久久久国产一区二区三区四区 | 久久一区二 | 欧美久久久久久久久久久 | 日韩在线观看你懂的 | 国产精品a级 | 国产精品久久久久久久久久久免费 | 国产精品自拍在线 | 久草男人天堂 | 国产精品美女视频网站 | 毛片随便看 | 九九久久精品视频 | 国产中文在线视频 | 性色av一区二区三区在线观看 | 99久久精品久久亚洲精品 | 五月天久久综合 | 国产一区在线播放 | www.成人sex| 久久精品高清视频 | av中文字幕免费在线观看 | 亚洲激情视频在线 | 亚洲日本成人网 | 亚洲一本视频 | 在线观看激情av | 一级性视频| 成人在线观看免费 | 最近日本mv字幕免费观看 | 国产黄色大片 | 日韩有码专区 | 久久久久久久久久亚洲精品 | 综合网五月天 | 丁香五月亚洲综合在线 | 日本在线视频网址 | 精品免费视频 | 成人黄色大片 | 欧美视频xxx | 亚洲精品88欧美一区二区 | 国产成人777777 | 综合国产在线 | 国产精品美女久久久网av | 久久999久久 | 在线综合色 | 免费观看一级特黄欧美大片 | 天天想夜夜操 | 亚洲精品国产精品乱码不99热 | aⅴ精品av导航 | 日韩精品中文字幕在线播放 | 五月激情电影 | 啪啪动态视频 | 国产亚洲精品无 | 久草视频在线免费播放 | 国产精品一区二区三区99 | 久久狠狠婷婷 | av九九九| 色是在线视频 | 日韩另类在线 | 天天曰夜夜爽 | 色诱亚洲精品久久久久久 | 天天插天天 | 91麻豆精品国产91久久久更新时间 | 激情婷婷丁香 | 91九色蝌蚪国产 | 91高清完整版在线观看 | 一二区精品 | 九色精品免费永久在线 | 伊人天堂av | 一级c片| 欧美另类色图 | 人人搞人人爽 | 日三级在线 | 国产成人精品999 | 久久婷婷一区 | 久久av观看 | 亚洲h色精品 | 国产 欧美 在线 | 视频在线在亚洲 | 亚洲色图 校园春色 | 成 人 黄 色 视频免费播放 | 亚洲精品视频免费在线 | 国产精成人品免费观看 | 国产精品岛国久久久久久久久红粉 | 天天操天天爱天天爽 | 91亚洲精品在线观看 | 久久这里只有精品9 | 日日爽 | 国产精品午夜在线 | 久草视频国产 | 黄色网中文字幕 | 色香蕉在线 | 91在线观看高清 | 精精国产xxxx视频在线播放 | 国产黄色片一级 | 国产中文视频 | 亚洲最大免费成人网 | 国产在线观看地址 | 天天天色综合a | 在线免费中文字幕 | 亚洲免费av观看 | 国产日韩精品一区二区三区 | 日韩中文字幕免费在线播放 | 久久再线视频 | 欧美精品亚洲精品日韩精品 | 成片人卡1卡2卡3手机免费看 | 国产精品99久久久久久久久久久久 | 高清不卡一区二区三区 | 成人av在线观 | 久久精品一区二区三区中文字幕 | 激情五月综合 | a级一a一级在线观看 | 日韩视频图片 | 丁香激情网 | 国产黄色免费在线观看 | 99视频在线精品国自产拍免费观看 | 韩国av电影在线观看 | 国产精品不卡在线 | 久久一区国产 | 一区二区中文字幕在线观看 | 国产精品久久久久久久久久免费 | 九九在线高清精品视频 | 激情九九 | 六月丁香社区 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 国产精品久久久久久久久久新婚 | 天天天天色综合 | 免费又黄又爽 | 超碰97久久| 国产小视频免费在线网址 | 国产电影一区二区三区四区 | 日韩在线视频不卡 | 婷婷久操 | 日本3级在线观看 | 在线 高清 中文字幕 | 久久久久国产精品视频 | 日韩欧美电影 | 亚洲精品美女久久久久网站 | 丁香花在线视频观看免费 | 91免费高清在线观看 | 人人插人人舔 | 免费网站看av片 | 91视频啪 | 国产va精品免费观看 | 在线色吧 | 成 人 黄 色 免费播放 | 久草在线视频免费资源观看 | 亚洲成av人影片在线观看 | 女人18片毛片90分钟 | 91精品视频在线 | 亚洲激情六月 | 最近中文字幕完整视频高清1 | 欧美精品在线观看一区 | 啪一啪在线 | 国产亚洲精品久久久久久大师 | 久久久国产99久久国产一 | 中文字幕高清 | 日韩精品免费一线在线观看 | 天天操天天舔天天爽 | 精品专区 | 中文字幕精品一区二区三区电影 | 免费日韩一区二区 | 亚洲精品国产精品国自产观看浪潮 | 99精品视频在线看 | 91精品婷婷国产综合久久蝌蚪 | 国产五月天婷婷 | 9在线观看免费高清完整 | www.夜夜| 天天夜夜狠狠操 | 日韩av在线小说 | 国产精品黄 | 一区二区三区中文字幕在线观看 | 精品久久国产一区 | 久久综合色播五月 | 色播五月激情五月 | 亚洲精品免费播放 | 亚洲精品中文在线观看 | 超碰97中文 | 午夜免费福利视频 | 综合色亚洲 | 国产精品女同一区二区三区久久夜 | 久草网视频在线观看 | 青青河边草观看完整版高清 | 久久资源在线 | 91麻豆免费版 | 91男人影院| 在线观看av的网站 | 韩国精品视频在线观看 | 国产精品毛片一区二区在线 | 亚洲视频一 | 69人人| 9i看片成人免费看片 | 日韩理论影院 | 久久五月天综合 | 麻豆久久精品 | 日韩av三区 | 日韩高清精品免费观看 | 福利电影一区二区 | 亚洲蜜桃在线 | 三级a毛片 | 欧美成人精品三级在线观看播放 | 亚洲精品在线视频 | 国产精品字幕 | 中文字幕在线播放日韩 | 欧美精品久久久久性色 | 伊人五月天av | 又黄又爽又湿又无遮挡的在线视频 | 成人性生交大片免费看中文网站 | 亚洲精品视频在线播放 | 国产精品亚洲成人 | 在线一区电影 | 精品视频区 | 久久久精品一区二区三区 | 日韩动漫免费观看高清完整版在线观看 | 中文字幕在线影院 | 视频二区在线 | 久久精品一区二区三区国产主播 | 久草在线视频看看 | 久久夜av | 中文字幕在线观看免费高清完整版 | 精品免费一区二区三区 | 91免费网站在线观看 | 中文字幕在线精品 | 特级西西444www大精品视频免费看 | 玖玖爱国产在线 | 特黄一级毛片 | 在线观看国产高清视频 | 天堂网av 在线 | 天天操人 | 亚洲精选国产 | 久久久av电影 | 欧美日韩不卡一区二区三区 | 亚洲精品黄色片 | a视频在线| 激情中文字幕 | 亚洲区视频在线观看 | 天天操夜夜操 | www日韩在线| 日韩最新av | 久久久精品国产一区二区电影四季 | 亚洲国产精品500在线观看 | 中文字幕91在线 | 日韩在线电影观看 | 久久躁日日躁aaaaxxxx | 国产精品视频免费看 | 97视频在线观看网址 | 久久国产精品99久久久久久老狼 | 中文字幕观看av | 成人a视频| 超碰人人91| 一区二区三区免费 | 国产精品美女久久久久久 | 国产精品国产亚洲精品看不卡15 | 日韩在线电影一区二区 | 特级毛片在线观看 | 97国产精品视频 | 激情视频免费观看 | 欧美日韩亚洲一 | 欧美日韩高清一区 | 96香蕉视频 | 偷拍区另类综合在线 | 日韩色视频在线观看 | 日本成址在线观看 | 国产一区免费在线观看 | 在线a视频免费观看 | 亚洲 欧美 国产 va在线影院 | 99在线免费视频观看 | 最近最新mv字幕免费观看 | 91av视频观看 | 91精品啪在线观看国产线免费 | 狠狠艹夜夜干 | 四虎影视成人精品国库在线观看 | 欧美日韩国内在线 | 婷婷亚洲综合 | 国产传媒一区在线 | 99精品国产免费久久久久久下载 | 亚洲爱视频 | 国产一在线精品一区在线观看 | 久久精品一区二区三区视频 | 午夜久久福利 | 成人永久视频 | 亚洲国产精品小视频 | 日韩精品久久一区二区三区 | av大全在线看 | a在线播放 | 国产精品视频你懂的 | 色婷婷88av视频一二三区 | 免费又黄又爽视频 | av在线免费播放网站 | 欧美日产一区 | 国产精品免费在线观看视频 | 91视频com| 精品一区二区在线观看 | 欧美日韩国产二区三区 | 国产高清不卡av | 久久手机免费视频 | 四虎在线观看视频 | 色综合久久中文字幕综合网 | 91久久人澡人人添人人爽欧美 | 免费在线观看午夜视频 | 日韩网| 久久久久免费视频 | 韩国精品在线观看 | 黄色免费电影网站 | 亚洲更新最快 | 国产大尺度视频 | 久久99国产精品二区护士 | 亚洲免费av网站 | 九七视频在线 | 亚洲精品乱码久久久久久高潮 | 91亚瑟视频 | 狠狠色伊人亚洲综合网站野外 | 久草在线视频在线 | 日韩成人免费观看 | 久久欧洲视频 | 婷婷射五月 | 天天干天天操天天操 | 成人av片免费看 | www.天天操.com| 久久精品婷婷 | 国色综合 | 97色狠狠 | 99精品福利 | 色.com| 免费看av在线 | 中文字幕在线观看免费高清电影 | 五月天网页 | 99r精品视频在线观看 | 九9热这里真品2 | 在线不卡的av | 日韩国产精品久久久久久亚洲 | 国产高清在线观看av | 中文字幕在线观看日本 | 久久这里只精品 | 在线视频观看成人 | 国内少妇自拍视频一区 | 日日夜夜天天射 | 国产色拍拍拍拍在线精品 | 久久久久免费精品 | 蜜臀久久99静品久久久久久 | 色婷婷综合久久久久 | v片在线播放 | 狠狠色网| 99精品国产99久久久久久福利 | 手机看片 | 久久精品美女 | 免费毛片一区二区三区久久久 | 亚洲精品在线视频播放 | 青青河边草免费观看 | av成人亚洲 | 久草在线资源观看 | 欧美日韩大片在线观看 | 特片网久久 | 国产精品videossex国产高清 | 日韩电影精品 | 久久99国产精品久久99 | 天天曰视频 | 欧美一级片 | 日韩精品视频在线观看网址 | 十八岁以下禁止观看的1000个网站 | 色妞色视频一区二区三区四区 | 99久国产 | 亚洲在线不卡 | 福利一区二区在线 | 日韩在线观看视频在线 | 97精品国产一二三产区 | 亚洲最新视频在线 | 天天曰 | 成人黄色在线看 | 久久精品亚洲一区二区三区观看模式 | 麻豆91在线观看 | 性色av一区二区三区在线观看 | 99久久精品无免国产免费 | 91精品啪在线观看国产 | 在线看片91 | 中文国产在线观看 | 亚洲国产免费 | 国产精品观看视频 | 韩日av在线| 久久久国产精品一区二区中文 | 国产精品国产三级在线专区 | 久久成人综合 | 国产精品美女久久久网av | 亚洲女欲精品久久久久久久18 | 欧美成人h版在线观看 | 天天操天天弄 | 亚洲综合视频在线 | 亚洲一区不卡视频 | 最新影院| av噜噜噜在线播放 | 中文字幕日本在线 | 99色在线视频 | 丁香婷婷综合激情五月色 | 久久精品超碰 | 在线日韩精品视频 | 国产精品国内免费一区二区三区 | 99热在线免费观看 | 在线观看国产日韩 | 香蕉视频亚洲 | 美女黄频视频大全 | 亚洲2019精品 | 成人午夜剧场在线观看 | 91精品一区二区在线观看 | 2021国产在线视频 | 国产精品女主播一区二区三区 | 麻豆传媒在线视频 | 特级毛片在线 | 国产丝袜 | 在线观看的黄色 | 日日干综合 | 天天色天天射天天综合网 | 人人添人人澡人人澡人人人爽 | 五月婷婷综合激情网 | 免费视频久久久久 | 久久久久一区二区三区 | 在线日韩三级 | 欧美一级免费在线 | 久久99视频免费观看 | 亚洲一级特黄 | 99理论片 | 久久久久久中文字幕 | 久久精品一二三区 | 伊人五月 | 精品一二| 99精品系列 | 精品久久久久久久久中文字幕 | 伊人色综合久久天天网 | 中文字幕精品www乱入免费视频 | 成人在线观看日韩 | 日本中文字幕高清 | 在线视频一二区 | 91成人久久| 狠狠干夜夜爱 | 在线91精品 | 亚洲作爱视频 | 免费在线观看国产黄 | 国产精品免费在线视频 | 欧美日韩精品免费观看 | 视频一区二区免费 | 综合天堂av久久久久久久 | 欧美 日韩 视频 | 日韩精品在线播放 | 激情婷婷在线 | 91中文字幕在线视频 | 在线视频电影 | 成年性视频 | 日韩大陆欧美高清视频区 | 欧美日韩精品在线免费观看 | 午夜婷婷网 | 久久综合九色综合97_ 久久久 | 91女人18片女毛片60分钟 | 美女免费视频观看网站 | 亚洲黄色片一级 | 日韩中文字幕免费视频 | 激情五月伊人 | www.国产毛片 | 欧美国产日韩一区二区 | 日韩精品在线一区 | 色视频成人在线观看免 | 日本中文字幕在线视频 | 日韩免费高清在线 | 亚洲国产日韩在线 | 天堂在线一区二区 | 亚洲综合视频在线 | 日本精品视频一区 | 天堂网一区 | 中文永久字幕 | 中午字幕在线观看 | 国产精品毛片久久 | 天天色天| 国产中文字幕视频在线观看 | 久久中文精品视频 | 欧美a级成人淫片免费看 | 丁香六月在线观看 | 国产无遮挡又黄又爽在线观看 | 免费av观看 | 天天操夜操视频 | 一区二区三区污 | 日韩av有码在线 | 精品久久久精品 | 18pao国产成视频永久免费 | 2019中文字幕第一页 | 日韩精品久久久久久 | 国产护士av | 国产精品一区二区在线播放 | 亚洲三区在线 | 青春草免费在线视频 | 中文在线www | 人人cao | 午夜91在线 | 成人久久毛片 | 亚洲激情 | 日本老少交| 天天色天天射天天综合网 | 久久影院亚洲 | 婷婷在线观看视频 | 欧美片一区二区三区 | av网站播放| 国内视频在线 | 久久福利精品 | 九九久久久久久久久激情 | 黄色片亚洲 | 狠狠色狠狠色综合日日小说 | 中文字幕在线中文 | 国产一级片免费视频 | 天天射天天干天天 | 国产美女黄网站免费 | 天堂入口网站 | 日本在线视频一区二区三区 | www.色五月.com| 欧美一级爽| 成人免费视频播放 | 中文字幕一区二区三区久久蜜桃 | 一区二区伦理 | 在线观看视频在线 | 久久精品视频在线看 | 久久久官网| 婷婷日韩| av高清不卡 | 亚洲视频99 | 天天插天天爽 | 亚洲涩涩色 | 四虎影视成人精品 | 少妇bbbb揉bbbb日本 | 激情久久影院 | 久久精彩免费视频 | av久久久 | 不卡中文字幕在线 | 色是在线视频 | 久久99精品久久久久久清纯直播 | 黄色小说在线免费观看 | 久久久久久激情 | av在线收看| 天天爽人人爽夜夜爽 | 国产免费二区 | 丁香综合av | 国产999免费视频 | 日日操狠狠干 | www操操 | 97视频在线观看免费 | 久久成人精品电影 | 国产精品二区在线 | 在线一区观看 | 在线播放日韩av | 日韩电影中文 | 久久不卡电影 | 日日操天天射 | 天天综合视频在线观看 | 亚洲精品视频偷拍 | 超薄丝袜一二三区 | 国产一区免费在线观看 | 黄色片毛片 | 久久任你操 | 人人爽人人爽 | 国产高清免费视频 | 99免费国产 | 午夜国产福利在线观看 | 97成人精品视频在线观看 | 国产在线欧美日韩 | 中日韩三级视频 | 国产中文视频 | 亚洲视频一区二区三区在线观看 | 99久久精品免费看国产四区 | 人人爽人人射 | 日日夜夜免费精品 | 亚洲乱码久久 | 天天拍天天色 | 九色一区二区 | 国产一区视频免费在线观看 | 狠狠色丁香婷婷综合久小说久 | 久久男人中文字幕资源站 | 精品免费 | 最新免费中文字幕 | 日韩精品视频一二三 | 激情丁香5月 | 99精品视频精品精品视频 | 区一区二区三区中文字幕 | 波多野结衣视频一区 | 欧美久久久久久久久久久久 | 九月婷婷人人澡人人添人人爽 | 精品久久1 | 91在线最新 | av天天色| 亚洲一区二区麻豆 | 国产91精品在线播放 | 天天综合网 天天 | 欧美三级高清 | 亚洲欧美国产日韩在线观看 | 视频在线在亚洲 | 视频福利在线 | 欧美日韩不卡在线视频 | 中文字幕一区二区三区四区在线视频 | a色视频| 中文字幕在线观看免费高清完整版 | 日韩久久精品 | 天天综合中文 | 国产精品夜夜夜一区二区三区尤 | 69xxxx欧美 | 五月婷婷香蕉 | 视频成人永久免费视频 | 91私密保健 | 亚洲中字幕 | 婷婷在线免费观看 | 亚洲精品视频二区 | 亚洲v欧美v国产v在线观看 | 国内精品久久久久久 | 欧美成人亚洲成人 | 国产主播99 | 中文字幕在线观看视频网站 | 国产一区二区在线影院 | 精品字幕在线 | av中文天堂在线 | 免费高清av在线看 | 亚洲最大的av网站 | 97视频免费在线看 | 亚洲情感电影大片 | 97色在线观看 | 欧美精品在线观看一区 | 久久国产午夜精品理论片最新版本 | 91精品国产一区 | 在线观看中文 | 欧美性做爰猛烈叫床潮 | 久久久综合精品 | 天天干天天爽 | 日本中文字幕久久 | www.成人精品 | www.香蕉视频在线观看 | 日韩免费一级电影 | 日韩精品久久久久久 | 麻豆91在线 | 黄网站app在线观看免费视频 | 亚洲视频1 | 精品一区精品二区高清 | 欧美日本一二三 | 久久人人爽人人 | 欧美日韩视频精品 | 免费视频久久久久久久 | 色综合久久久久综合99 | 黄色com| 人人爱夜夜操 | 91精品国产99久久久久 | 国产精品18久久久久久久久久久久 | 国产视频日本 | 成人免费 在线播放 | 美女国产在线 | 国产亚洲日 | 久久99久久99精品免视看婷婷 | 91在线91 | 91精品国产自产在线观看永久 | 91三级在线观看 | 精品视频中文字幕 | 国产精品精品久久久久久 | 天天干天天搞天天射 | 在线观看黄污 | 免费碰碰 | 在线国产欧美 | 天天干天天想 | 中文字幕观看视频 | 国产成人91| 免费在线一区二区 | 超碰电影在线观看 | 不卡的av在线播放 | 亚欧日韩成人h片 | 97国产在线 | 永久免费精品视频网站 | av日韩精品| 国产精品久久久久久久av电影 | 欧美国产在线看 | 国产麻豆视频在线观看 | avhd高清在线谜片 | 伊人影院99 | 亚洲黄色在线免费观看 | 久久免费精品视频 | 黄色一区二区在线观看 | 久久视频这里只有精品 | 在线导航福利 | 久久久久久综合网天天 | 国产日韩欧美在线 | 久久精品美女视频网站 | 欧美精品久久久久久久久久久 | 亚洲高清在线观看视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 国产成人在线免费观看 | 欧美精品久久久久性色 | 久香蕉 | 免费亚洲片 | 狠狠干夜夜操天天爽 | 国产精品高潮久久av | 久久久久久片 | 毛片888| 国产精品99久久久 | 精品国产一区二区三区日日嗨 | 91亚洲网| 久章草在线| 中字幕视频在线永久在线观看免费 | 精品国产一区二区三区久久久蜜臀 | 成人一级免费电影 | 91视频在线国产 | 午夜男人影院 | 欧美日韩在线观看视频 | 国产精品免费在线播放 | 亚洲午夜精品一区二区三区电影院 | 国产美女久久 | 一区二区激情视频 | av在线精品 | 色婷婷国产精品 | 日本中文字幕在线免费观看 | 91.精品高清在线观看 | 日韩激情一二三区 | 男女男视频 | 特黄特色特刺激视频免费播放 | 久久精品aaa | 国产在线一区二区 | 亚洲精品一区中文字幕乱码 | 欧美精品免费在线 | 国产精品不卡在线观看 | 国产精品久久久久久久久毛片 | 果冻av在线| 天天激情天天干 | www狠狠| 波多野结衣久久精品 | 国产成人av网站 | 久久久三级视频 | 视频一区二区视频 | 国产一区二区三区免费在线观看 | 97人人视频 | 丁香资源影视免费观看 | 9i看片成人免费看片 | 欧美日韩中字 | 中文字幕 国产专区 | 久久成人在线 | 欧美日韩二区在线 | 91完整版观看 | 日韩欧美视频免费观看 | 亚洲激情六月 | 亚洲一级黄色片 | 99精品在线视频观看 | 人人爽人人爽人人片 | 国产特黄色片 | 国产中文字幕在线免费观看 | 亚洲精品中文字幕视频 | 福利视频| 国产精品v欧美精品v日韩 | h文在线观看免费 | 高清av影院 | 免费精品| 亚洲天天摸日日摸天天欢 | 成人免费xxx在线观看 | 亚洲欧美日韩国产一区二区三区 | 国产剧情一区在线 | www.eeuss影院av撸 | 婷婷天天色 | 亚洲一级片免费观看 | 婷婷丁香五 | 亚洲人在线7777777精品 | 黄色软件在线观看 | 国产精品一区二区三区在线免费观看 | 狠狠色丁香婷婷综合久小说久 | 丰满少妇在线观看 | 国产福利不卡视频 | 99久久99| 日日夜夜精品视频天天综合网 | 国产精久久 | 97福利| 美女黄频在线观看 | 91热这里只有精品 | 99热在线免费观看 | 黄色一级网 | 500部大龄熟乱视频使用方法 | 99在线视频免费观看 | 五月婷婷激情五月 | 在线va网站 | 欧美日韩3p | 99精品国产高清在线观看 | 9999国产| 亚洲免费精品一区二区 | 91一区二区三区久久久久国产乱 | 91在线精品一区二区 | 激情伊人五月天久久综合 | 一区电影 | 久久中文欧美 | 久久久久久久久免费视频 | 色婷婷激婷婷情综天天 | 免费成人av网站 | 国产麻豆果冻传媒在线观看 | 91成人看片| 天天狠狠干| 国产精品久久久久三级 | 天天干天天操天天干 | 91精品久久久久 | 日韩电影一区二区在线 | 久久久久久激情 | 三日本三级少妇三级99 | 久草观看 | 欧美成人高清 | 欧美一区二区精品在线 | 久久99热这里只有精品 | 国产精品国产亚洲精品看不卡15 | 久久理论电影 | 香蕉网在线播放 | 中文字幕在线视频第一页 | 久久 国产一区 | 91在线视频在线观看 | 亚洲欧美日韩国产精品一区午夜 | 人人射人人爱 | 天天爱天天 | 国产99久久久国产精品 | 五月婷婷丁香激情 | 五月婷婷久 | 国产精品一区二区三区免费看 | 国产精品国产精品 | 三级黄色网址 | 久久8| 婷婷5月激情5月 | 成年人黄色大片在线 | 丁香视频全集免费观看 | 国产精品综合在线 | 人人爽人人av | 9在线观看免费高清完整版 玖玖爱免费视频 | 天天干天天拍天天操天天拍 | 国产免费不卡 | 久久视频这里有久久精品视频11 | 国产亚洲精品综合一区91 | 欧美日韩中文在线视频 | 中文字幕在线观看播放 | 久久久久久久久久久久亚洲 | 久久精品视频3 | 少妇bbbb揉bbbb日本 | 午夜美女视频 | www.com.日本一级 | 91在线看 | 日本99精品 | 国产成人久久精品亚洲 | 日本久久久久久 | 91网站免费观看 | 久草视频在线播放 | 99综合久久 | 国产精品毛片久久久久久久久久99999999 | 91av在线视频播放 | 亚洲狠狠操 | 国产精品麻豆91 | 久久99国产精品免费 | 久久精品黄 | 夜夜躁狠狠躁日日躁视频黑人 | 免费观看黄色av | 六月色播 | 中文字幕视频观看 | 婷婷在线色 | 久久久久久久久久久久久国产精品 | 国产黄色特级片 | 久久免费久久 | 亚洲性少妇性猛交wwww乱大交 | 色婷婷激情综合 | 热久久在线视频 | 成年人黄色大全 | 久久久久久久久久久久影院 | 521色香蕉网站在线观看 | 色婷婷狠狠 | 午夜在线看片 | 在线99热 | 成年人免费观看国产 | 精品国产乱码久久久久久1区2匹 | 在线亚洲观看 | 久久永久免费 | 99视频一区二区 | 国产高清视频在线 | 国产精品2018| 大胆欧美gogo免费视频一二区 | 97超碰国产精品女人人人爽 | av高清在线观看 | 91经典在线 | www.国产精品 | 成人黄色在线看 | 国产在线毛片 | 亚洲欧美婷婷六月色综合 | 国产精品18videosex性欧美 | 激情欧美xxxx| 中文字幕亚洲不卡 | 欧美精品久久久久性色 | 天天草天天爽 | 狠狠干婷婷色 | 黄色日本免费 | 国产精品99久久久久久人免费 | 日本黄色免费电影网站 | 国产精品 国产精品 | 中文av免费 | 亚洲国产精品久久久 | 国产精品密入口果冻 | 精品一区欧美 | 涩涩在线 | 91精品区| 国产精品女人久久久久久 | 国产精品一区二区在线免费观看 | 久久久久网址 | 91视频一8mav| bbw av| 爱情影院aqdy鲁丝片二区 | 日韩久久精品一区二区三区下载 | 日韩av中文在线 | 日韩电影在线观看一区二区 | 久久看片 | 日本一区二区高清不卡 | 天天插天天狠 | 国产毛片久久久 | 色婷婷97| 国产韩国日本高清视频 | 伊人久久婷婷 | 成人免费在线观看av | 黄av免费| 欧美日本高清视频 | 成年人在线观看网站 | av免费看网站 | 激情丁香月| 久久精品一区二区三区视频 | 久久精品这里都是精品 | 在线视频观看你懂的 | 国产 日韩 在线 亚洲 字幕 中文 | 国产免费观看久久黄 | 国产成人一区二区三区免费看 | 国产小视频在线观看免费 | 国产一区二区综合 | 毛片在线播放网址 | av大全在线看| 亚洲黄色一级电影 | 91xav| 亚洲精品乱码久久久久久高潮 | 国产精品美女在线观看 | 日韩视频在线一区 | 婷婷色网 | 超碰夜夜| 久久免费久久 | 色婷婷色 | 黄色亚洲在线 | 国产综合在线观看视频 | 在线免费观看国产黄色 | 国产一区视频在线播放 | 国产高清日韩 | 国产精品亚州 | 毛片网在线观看 | av在线观 | 麻豆久久精品 | 久久久久久免费视频 | 综合网av | 午夜精品久久久久久久99无限制 | 99中文视频在线 | 99热这里有精品 | 国产成人资源 | 在线视频app | 免费毛片一区二区三区久久久 | 欧美日韩国产一区二区在线观看 | 三级性生活视频 | 精品国产一区二区三区久久久久久 | 一二三四精品 | 免费精品在线视频 | 亚洲精品久久久久中文字幕二区 | 天天操天天摸天天爽 | 国产一级片视频 | 91精品视频观看 | 亚洲理论电影网 | 午夜电影久久久 | 国产麻豆精品传媒av国产下载 | 精品国产欧美 | 天天天干夜夜夜操 | 毛片无卡免费无播放器 | 成人午夜剧场在线观看 | 午夜精品福利影院 | 91刺激视频 | 色综合久久久久综合 |