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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

亿些模板【图论】

發(fā)布時間:2023/12/3 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 亿些模板【图论】 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • 前言
  • 圖論模板
    • 最短路-Floyd
    • 最短路-SPFA
    • 最短路-Dij+堆優(yōu)化
    • 最小生成樹-Kruskal
    • 最小生成樹-Prim+堆優(yōu)化
    • 最大匹配-匈牙利算法
    • tarjan求割點
    • tarjan縮點
    • LCA-樹上倍增
    • LCA-tarjan+并查集優(yōu)化
    • 網(wǎng)絡流-最大流dinic
    • 網(wǎng)絡流-最小費用最大流
    • 負環(huán)
    • 虛樹
    • 2-SAT
    • Kruskal重構樹
    • 靜態(tài)仙人掌

前言

因為老是懶得打模板的時候老是扣不到自己的標(因為之前的都打得太丑了),所以導致我十分的不爽。便打算開一個模板庫。會不斷更新的


圖論模板

最短路-Floyd

for(int k=1;k<=n;k++)for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)if(dis[i][k]+dis[k][j]<dis[i][j])dis[i][j]=dis[i][k]+dis[k][j];

最短路-SPFA

struct edge_node{int to,next,w; }a[M]; void addl(int x,int y,int w){a[++tot].to=y;a[tot].next=ls[x];a[tot].w=w;ls[x]=tot; } void spfa(int s) {memset(f,0x3f,sizeof(f));q.push(s);v[s]=1;f[s]=0;while(!q.empty()){int x=q.front();q.pop();for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(f[x]+a[i].w<f[y]){f[y]=f[x]+a[i].w;if(!v[y]){v[y]=1;q.push(y);}}}v[x]=false;} }

最短路-Dij+堆優(yōu)化

#include<cstdio> #include<cstring> #include<queue> using namespace std; const int N=100010,M=200010; struct node{int pos,dis;bool operator<(const node &x)const{return x.dis<dis;} }; struct edge_node{int to,next,w; }a[M]; priority_queue<node> q; int tot,ls[N],dis[N],n,m,S; bool v[N]; void addl(int x,int y,int w) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;a[tot].w=w; } void dij(int s) {dis[s]=0;q.push((node){s,0});while(!q.empty()){node tmp=q.top();q.pop();int x=tmp.pos;if(v[x]) continue;v[x]=1;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(dis[y]>dis[x]+a[i].w){dis[y]=dis[x]+a[i].w;if(!v[y])q.push(node{y,dis[y]});}}} } int main() {scanf("%d%d%d",&n,&m,&S);memset(dis,0x3f,sizeof(dis));for(int i=1;i<=m;i++){int x,y,w;scanf("%d%d%d",&x,&y,&w);addl(x,y,w);}dij(S);for(int i=1;i<=n;i++)printf("%d ",dis[i]); } }

最小生成樹-Kruskal

#include<cstdio> #include<algorithm> using namespace std; const int N=301,M=100010; struct node{int x,y,w; }a[M]; int n,m,fa[N],ans,k; bool cmp(node x,node y) {return x.w<y.w;} int find(int x) {return fa[x]==x?x:find(fa[x]);} int main() {scanf("%d%d",&n,&m);for(int i=1;i<=m;i++)scanf("%d%d%d",&a[i].x,&a[i].y,&a[i].w);for(int i=1;i<=n;i++)fa[i]=i;sort(a+1,a+1+m,cmp);for(int i=1;i<=m;i++){int Fa=find(a[i].x),Fb=find(a[i].y);if(Fa!=Fb){fa[Fb]=Fa;ans+=a[i].w;k++;}if(k==n-1) break;}printf("%d %d",k,ans); }

最小生成樹-Prim+堆優(yōu)化

這個坑先放著,以后再填

最大匹配-匈牙利算法

#include<cstdio> #include<cstring> using namespace std; const int N=1010; struct line{int to,next; }a[N*N]; int link[N],n,m,ls[N],tot,s,e; bool cover[N]; void addl(int x,int y) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot; } bool find(int x) {int p=0;for (int i=ls[x];i;i=a[i].next){int y=a[i].to;if (!cover[y]){p=link[y];link[y]=x;cover[y]=true;if (!p || find(p)) return true;link[y]=p;}}return false; } int main() {scanf("%d%d%d",&n,&m,&e);for (int i=1;i<=e;i++){int x,y;scanf("%d%d",&x,&y);if(x>m||y>m) continue;addl(x,y);}for (int i=1;i<=n;i++){memset(cover,false,sizeof(cover));if (find(i)) s++;}printf("%d",s); }

tarjan求割點

#include<cstdio> #include<algorithm> #define N 20100 #define M 100100 using namespace std; struct node{int to,next; }a[M*2]; int n,m,tot,dfn[N],low[N],ls[N],cnt,z,root; bool mark[N],v[N]; void addl(int x,int y) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot; } void tarjan(int x) {dfn[x]=low[x]=++cnt;int flag=0;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;v[y]=0;if(!dfn[y]){tarjan(y);low[x]=min(low[x],low[y]);if(dfn[x]<=low[y]){flag++;if((x!=root||flag>1)&&!mark[x])mark[x]=1,z++;}}else low[x]=min(low[x],dfn[y]);} } int main() {scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){int x,y;scanf("%d%d",&x,&y);if(x==y) continue;addl(x,y);addl(y,x);}for(int i=1;i<=n;i++)if(!dfn[i]) root=i,tarjan(i);printf("%d\n",z);for(int i=1;i<=n;i++)if(mark[i]) printf("%d ",i); }

tarjan縮點

#include<cstdio> #include<stack> #include<queue> #include<cstring> #define N 10000 #define M 100000 using namespace std; stack<int> Stack; queue<int> q; struct line{int to,from,next; }a[M]; int n,m,x,y,tot,in[N],ls[N],fl[N],cost[N],f[N],maxs,low[N],dfn[N],top,num,gt[N],an[N]; bool ins[N],v[N]; void addl(int x,int y,int tot) {a[tot].to=y;a[tot].from=x;a[tot].next=ls[x];ls[x]=tot; } void tarjan(int x) {ins[x]=true;dfn[x]=low[x]=++top;Stack.push(x);for (int i=ls[x];i;i=a[i].next)if (!dfn[a[i].to]){tarjan(a[i].to);low[x]=min(low[x],low[a[i].to]);}else if (ins[a[i].to])low[x]=min(low[x],dfn[a[i].to]);if (low[x]==dfn[x]){while (Stack.top()!=x){int y=Stack.top();fl[y]=x;an[x]+=cost[y];//計算強聯(lián)通權值和Stack.pop();ins[y]=0;}fl[x]=x;an[x]+=cost[x];//計算強聯(lián)通權值和ins[x]=0;Stack.pop();} } int main() {scanf("%d%d",&n,&m);for (int i=1;i<=n;i++) scanf("%d",&cost[i]);for (int i=1;i<=m;i++){scanf("%d%d",&x,&y);addl(x,y,i);//加邊}for (int i=1;i<=n;i++)if (!dfn[i])tarjan(i);//求強聯(lián)通memset(ls,0,sizeof(ls));//去除所有的邊的連通(保留值的)for (int i=1;i<=m;i++){x=a[i].from;y=a[i].to;if (fl[x]!=fl[y])//不在強聯(lián)通中{tot++;addl(fl[x],fl[y],tot);//連邊in[fl[y]]++;//統(tǒng)計入度}} }

LCA-樹上倍增

#include<cstdio> #include<algorithm> #include<queue> #include<cmath> #define N 600001 using namespace std; struct line{int to,next,w; }a[N*5]; int tot,n,m,s,x,y,ls[N],dep[N],f[N][30],dis[N][30],t; queue<int> q; inline int readn() {int X=0,w=0; char c=0;while(c<'0'||c>'9') {w|=c=='-';c=getchar();}while(c>='0'&&c<='9') X=(X<<3)+(X<<1)+(c^48),c=getchar();return w?-X:X; } inline void addl(int x,int y,int w) {a[++tot].to=y;a[tot].next=ls[x];a[tot].w=w;ls[x]=tot; } inline void bfs(int s) {q.push(s);dep[s]=1;while(!q.empty()){int x=q.front();q.pop();for (int i=ls[x];i;i=a[i].next){int y=a[i].to;if (dep[y]) continue;q.push(y);f[y][0]=x;dep[y]=dep[x]+1;dis[y][0]=a[i].w;}}t=(int)(log(n)/log(2))+1;for (int j=1;j<=t;j++){for (int i=1;i<=n;i++){f[i][j]=f[f[i][j-1]][j-1];dis[i][j]=min(dis[i][j-1],dis[f[i][j-1]][j-1]);}} } inline int LCA(int x,int y) {if (dep[x]>dep[y]) swap(x,y);for (int i=t;i>=0;i--)if (dep[f[y][i]]>=dep[x]) y=f[y][i];if (x==y) return x;for (int i=t;i>=0;i--)if (f[y][i]!=f[x][i]) {x=f[x][i];y=f[y][i];}return f[x][0]; } int main() {n=readn();m=readn();s=readn();for(int i=1;i<n;i++){addl(x=readn(),y=readn(),1);addl(y,x,1);}bfs(s);for(int i=1;i<=m;i++){printf("%d\n",LCA(readn(),readn()));} }

LCA-tarjan+并查集優(yōu)化

#include<cstdio> #include<iostream> using namespace std; struct line{int next,to; }a[20001]; int father[10001],n,m,q,p,v[10001],ans,tot,ls[10001],t,x,y,in[10001]; bool ok; void addl(int x,int y)//加邊 {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot; } int find(int x)//并查集優(yōu)化 {return x==father[x]?x:find(father[x]); } void tarjan(int x) {v[x]=1;for (int i=ls[x];i;i=a[i].next)//子節(jié)點{int y=a[i].to;if (v[y]) continue;tarjan(y);//tarjan一遍father[y]=x;//記錄祖先}if (ok) return;//標記已找到if (v[q]==2 && x==p){printf("%d\n",find(q));//輸出ok=true;return;}if (v[p]==2 && x==q)///輸出{printf("%d\n",find(p));ok=true;return;}v[x]=2; } int main() {scanf("%d",&t);for (;t;t--){scanf("%d",&n);tot=0;ok=0;for (int i=1;i<=n;i++){ls[i]=0;father[i]=i;v[i]=0;in[i]=0;}for (int i=1;i<n;i++){scanf("%d%d",&x,&y);in[y]++;addl(x,y);addl(y,x);}scanf("%d%d",&q,&p);for (int i=1;i<=n;i++)//尋找根if (in[i]==0) tarjan(i);//printf("%d\n",ans);} }

網(wǎng)絡流-最大流dinic

#include<cstdio> #include<algorithm> #include<cstring> #include<queue> using namespace std; const int N=10010,M=100010,inf=2147483647/3; struct node{int to,next,w; }a[M*2]; int tot=1,n,s,t,m,ans; int dep[N],ls[N]; queue<int> q; void addl(int x,int y,int w) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;a[tot].w=w;a[++tot].to=x;a[tot].next=ls[y];ls[y]=tot;a[tot].w=0; } bool bfs() {memset(dep,0,sizeof(dep));while(!q.empty()) q.pop();q.push(s);dep[s]=1;while(!q.empty()){int x=q.front();q.pop();for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(!dep[y]&&a[i].w){dep[y]=dep[x]+1;if(y==t) return true;q.push(y);}}}return false; } int dinic(int x,int flow) {int rest=0,k;if(x==t) return flow;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(dep[x]+1==dep[y]&&a[i].w){rest+=(k=dinic(y,min(a[i].w,flow-rest)));a[i].w-=k;a[i^1].w+=k;if(rest==flow) return flow;}}if(!rest) dep[x]=0;return rest; } void netflow() {while(bfs())ans+=dinic(s,inf); } int main() {scanf("%d%d%d%d",&n,&m,&s,&t);for(int i=1;i<=m;i++){int x,y,w;scanf("%d%d%d",&x,&y,&w);addl(x,y,w);}netflow();printf("%d",ans); }

網(wǎng)絡流-最小費用最大流

#include<cstdio> #include<cstring> #include<algorithm> #include<queue> using namespace std; const int N=5010,M=50010,inf=2147483647/3; struct node{int to,w,c,next; }a[M*2]; queue<int>q; int f[N],mf[N],ls[N],pre[N]; int n,s,e,tot,m,anscost,ansflow; bool v[N]; void addl(int x,int y,int w,int c) {a[++tot].w=w;a[tot].to=y;a[tot].c=c;a[tot].next=ls[x];ls[x]=tot;a[++tot].w=0;a[tot].to=x;a[tot].c=-c;a[tot].next=ls[y];ls[y]=tot; } bool spfa() {memset(f,0x3f,sizeof(f));memset(v,0,sizeof(v));memset(mf,0,sizeof(mf));q.push(s);f[s]=0;v[s]=1;mf[s]=inf;while(!q.empty()){int x=q.front();q.pop();v[x]=0;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(f[x]+a[i].c<f[y]&&a[i].w){f[y]=f[x]+a[i].c;mf[y]=min(mf[x],a[i].w);pre[y]=i;if(!v[y]){v[y]=true;q.push(y);}}}}return f[e]<=2147483647/3; } int updata() {int x=e;while(x!=s){a[pre[x]].w-=mf[e];a[pre[x]^1].w+=mf[e];x=a[pre[x]^1].to;}anscost+=f[e]*mf[e];ansflow+=mf[e]; } void netflow() {while(spfa())updata(); } int main() {tot=1;scanf("%d%d%d%d",&n,&m,&s,&e);for(int i=1;i<=m;i++){int x,y,w,c;scanf("%d%d%d%d",&x,&y,&w,&c);addl(x,y,w,c);}netflow();printf("%d %d",ansflow,anscost); }

負環(huán)

#include<cstdio> #include<queue> #include<cstring> using namespace std; const int N=2100,M=3100; struct node{int to,next,w; }a[M*2]; queue<int> q; int n,m,tot,ls[N],f[N],cnt[N],T; bool v[N]; void addl(int x,int y,int w) {a[++tot].to=y;a[tot].next=ls[x];a[tot].w=w;ls[x]=tot; } bool spfa() {memset(f,0x3f,sizeof(f));memset(cnt,0,sizeof(cnt));q.push(1);cnt[1]=1;f[1]=0;v[1]=1;while(!q.empty()){int x=q.front();v[x]=0;q.pop();for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(f[x]+a[i].w<f[y]){f[y]=f[x]+a[i].w;cnt[y]=cnt[x]+1;if(cnt[y]>=n&&a[i].w<0)return true;if(!v[y]){v[y]=1;q.push(y);}}} }return false; } int main() {scanf("%d",&T);while(T--){ memset(ls,0,sizeof(ls));tot=0;scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){int x,y,w;scanf("%d%d%d",&x,&y,&w);addl(x,y,w);if(w>=0) addl(y,x,w);}if(spfa()) printf("YE5");else printf("N0");putchar('\n');} }

虛樹

#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=110000; struct node{int to,next; }a[2*N]; int n,siz[N],dep[N],son[N],top[N],fa[N]; int tot,ls[N],p[N],ans,cnt,s[N],q,dfn[N],num; void adde(int x,int y) {if(x==y) return;a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot; } void dfs1(int x) {siz[x]=1;dfn[x]=++num; for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==fa[x]) continue;dep[y]=dep[x]+1;fa[y]=x;dfs1(y);siz[x]+=siz[y];if(siz[y]>siz[son[x]])son[x]=y; } } void dfs2(int x,int fa) {if(son[x]){top[son[x]]=top[x];dfs2(son[x],x);}for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==fa||y==son[x]) continue;top[y]=y;dfs2(y,x);} } int LCA(int x,int y) {while(top[x]!=top[y])if(dep[top[x]]<dep[top[y]]) y=fa[top[y]];else x=fa[top[x]];if(dep[x]<dep[y]) return x;return y; } void ins(int x) {if(!cnt){s[++cnt]=x;return;}int lca=LCA(s[cnt],x);while(cnt>1&&dep[lca]<dep[s[cnt-1]]){adde(s[cnt-1],s[cnt]),cnt--;}if(dep[lca]<dep[s[cnt]]) adde(lca,s[cnt--]);if((!cnt)||(s[cnt]!=lca)) s[++cnt]=lca;s[++cnt]=x; } void dp(int x) {if(siz[x]){for(int i=ls[x];i;i=a[i].next){int y=a[i].to;dp(y);if(siz[y]){siz[y]=0;ans++;}}}else{for(int i=ls[x];i;i=a[i].next){int y=a[i].to;dp(y);siz[x]+=siz[y];siz[y]=0;}if(siz[x]>1){ans++;siz[x]=0;}}ls[x]=0; } bool cmp(int x,int y) {return dfn[x]<dfn[y];} int main() {scanf("%d",&n);for(int i=1;i<n;i++){int x,y;scanf("%d%d",&x,&y);adde(x,y);adde(y,x);}dfs1(1);top[1]=1;dfs2(1,1);tot=0;memset(siz,0,sizeof(siz));memset(ls,0,sizeof(ls));scanf("%d",&q);while(q--){int k;cnt=0;ans=0;scanf("%d",&k);p[0]=1;for(int i=1;i<=k;i++){scanf("%d",&p[i]);siz[p[i]]++;}for(int i=1;i<=k;i++)if(siz[fa[p[i]]]){puts("-1");p[0]=0;break;}if(!p[0]){for(int i=1;i<=k;i++)siz[p[i]]--;continue;}sort(p+1,p+1+k,cmp);if(p[1]!=1) s[++cnt]=1;for(int i=1;i<=k;i++) ins(p[i]);while(cnt>1) adde(s[cnt-1],s[cnt]),cnt--;dp(1);siz[1]=tot=0;printf("%d\n",ans);} }

2-SAT

#include<cstdio> #include<cstring> #include<algorithm> #include<stack> using namespace std; const int N=2e6+10; struct node{int to,next; }a[N*2]; int n,m,tot,cnt,num,ls[N]; int dfn[N],low[N],color[N]; bool ins[N]; stack<int> S; void addl(int x,int y){a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;return; } void tarjan(int x){dfn[x]=low[x]=++cnt;S.push(x);ins[x]=1;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(!dfn[y])tarjan(y),low[x]=min(low[x],low[y]);else if(ins[y]) low[x]=min(low[x],dfn[y]);}if(low[x]==dfn[x]){++num;while(S.top()!=x){ins[S.top()]=0;color[S.top()]=num;S.pop();}color[S.top()]=num;ins[S.top()]=0;S.pop();}return; } int main() {scanf("%d%d",&n,&m);for(int k=1;k<=m;k++){int i,a,j,b;scanf("%d%d%d%d",&i,&a,&j,&b);addl(i+a*n,j+(!b)*n);addl(j+b*n,i+(!a)*n);}for(int i=1;i<=n*2;i++)if(!dfn[i])tarjan(i);for(int i=1;i<=n;i++)if(color[i]==color[i+n]){printf("IMPOSSIBLE");return 0;}printf("POSSIBLE\n");for(int i=1;i<=n;i++)printf("%d ",color[i]<color[i+n]); }

Kruskal重構樹

#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=2e5+10; struct node{int x,y,w; }e[N]; struct edge_node{int to,next; }a[N]; int n,m,k,tot,cnt,root,ls[N],val[N]; int top[N],dep[N],siz[N],son[N],fa[N]; void addl(int x,int y) {a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot; } bool cmp(node x,node y) {return x.w<y.w;} int find(int x) {return (fa[x]==x)?x:(fa[x]=find(fa[x]));} void dfs1(int x) {for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==fa[x]) continue;dep[y]=dep[x]+1;fa[y]=x;dfs1(y);siz[x]+=siz[y];if(siz[y]>siz[son[x]])son[x]=y;} } void dfs2(int x) {if(son[x]){top[son[x]]=top[x];dfs2(son[x]);}for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==fa[x]||y==son[x]) continue;top[y]=y;dfs2(y);} } int LCA(int x,int y) {while(top[x]!=top[y]){if(dep[top[x]]<dep[top[y]])swap(x,y);x=fa[top[x]];}if(dep[x]<dep[y]) return x;else return y; } int main() {scanf("%d%d%d",&n,&m,&k);for(int i=1;i<=m;i++)scanf("%d%d%d",&e[i].x,&e[i].y,&e[i].w);for(int i=1;i<=n+m;i++)fa[i]=i;sort(e+1,e+1+m,cmp);cnt=n;for(int i=1;i<=m;i++){int fx=find(e[i].x),fy=find(e[i].y);if(fx!=fy){fa[fy]=fa[fx]=++cnt;addl(cnt,fx);addl(cnt,fy);addl(fx,cnt);addl(fy,cnt);val[cnt]=e[i].w;}}root=find(1);dfs1(root);top[root]=root;dfs2(root);for(int i=1;i<=k;i++){int x,y;scanf("%d%d",&x,&y);printf("%d\n",val[LCA(x,y)]);} }

靜態(tài)仙人掌

#include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int N=3e4+10,K=18; struct node{int to,next,w; }a[N*2],e[N*2]; int n,m,q,tot,num,cnt; int f[N][K],s[N],val[N],dep[N],dis[N]; int ls[N],rs[N],dfn[N],low[N]; void addl(int x,int y,int w){a[++tot].to=y;a[tot].next=ls[x];a[tot].w=w;ls[x]=tot; } void adde(int x,int y,int w){e[++tot].to=y;e[tot].next=rs[x];e[tot].w=w;rs[x]=tot; } void circle(int x,int y,int w){num++;int now=y,sum=w;while(now!=f[x][0]){s[now]=sum;sum+=val[now];now=f[now][0];}sum=s[num]=s[x];s[x]=0;now=y;int Dis;while(now!=f[x][0]){Dis=min(s[now],sum-s[now]);adde(num,now,Dis);adde(now,num,Dis);now=f[now][0];}return; } void tarjan(int x){dfn[x]=low[x]=++cnt;int flag=0;for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(y==f[x][0])continue;if(!dfn[y]){f[y][0]=x;val[y]=a[i].w;tarjan(y);low[x]=min(low[x],low[y]);}else low[x]=min(low[x],dfn[y]);if(low[y]<=dfn[x])continue;adde(x,y,a[i].w);adde(y,x,a[i].w);}for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(x==f[y][0]||dfn[x]>=dfn[y])continue;circle(x,y,a[i].w);}return; } void dfs(int x,int fa){for(int i=rs[x];i;i=e[i].next){int y=e[i].to;if(y==fa)continue;dep[y]=dep[x]+1;dis[y]=dis[x]+e[i].w;f[y][0]=x;dfs(y,x);}return; } int Get_dis(int x,int y){int u=x,v=y;if(dep[x]>dep[y])swap(x,y);for(int i=K-1;i>=0;i--)if(dep[f[y][i]]>=dep[x])y=f[y][i];int lca;if(x!=y){for(int i=K-1;i>=0;i--)if(f[x][i]!=f[y][i])x=f[x][i],y=f[y][i];lca=f[x][0];}else lca=x;if(lca<=n)return dis[u]+dis[v]-dis[lca]*2;else {int ans=dis[u]-dis[x]+dis[v]-dis[y];return ans+min(s[lca]-abs(s[x]-s[y]),abs(s[x]-s[y]));} } int main() {scanf("%d%d%d",&n,&m,&q);num=n;for(int i=1;i<=m;i++){int x,y,w;scanf("%d%d%d",&x,&y,&w);addl(x,y,w);addl(y,x,w);}tot=0;tarjan(1);dep[1]=1;dfs(1,0);for(int i=1;i<K;i++)for(int j=1;j<=num;j++)f[j][i]=f[f[j][i-1]][i-1]; for(int i=1;i<=q;i++){int x,y;scanf("%d%d",&x,&y);printf("%d\n",Get_dis(x,y));} }

總結

以上是生活随笔為你收集整理的亿些模板【图论】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

天天草天天干天天射 | 国产午夜不卡 | 99视频久久| 在线视频日韩欧美 | 久久无码精品一区二区三区 | 99精品视频在线 | 大胆欧美gogo免费视频一二区 | 一区二区三区免费网站 | 91成年人网站 | 综合激情网 | 成人在线视频网 | 免费视频97 | www.黄色小说.com | 日韩精品视频免费看 | 狠狠躁夜夜a产精品视频 | 美女精品 | 国产免费三级在线观看 | 中文字幕电影高清在线观看 | 国产小视频网站 | 天天摸天天舔天天操 | 91尤物在线播放 | 婷婷激情欧美 | 亚洲精品国产综合久久 | 国产精品一区二区免费在线观看 | 免费成人黄色 | 久久免费试看 | 国产 视频 高清 免费 | 九九爱免费视频在线观看 | www.在线看片.com | 亚洲欧洲精品一区 | 国产在线播放一区二区三区 | 久久精品一级片 | 国产色网| 久久久久麻豆v国产 | 亚洲精品国精品久久99热 | 国产女人免费看a级丨片 | 激情婷婷丁香 | 国产精品久久久久久久午夜 | 美女久久久久久久久久 | 国产一区二区综合 | 伊人开心激情 | 国产精品 日韩 | wwwwww黄 | 成人一级在线观看 | 热久久这里只有精品 | 中文字幕日韩伦理 | 黄色软件在线观看 | 精品国产人成亚洲区 | 激情综合国产 | 亚洲色视频 | 免费av小说 | 日本久久久久久久久久久 | 日本精品va在线观看 | 亚洲激情 欧美激情 | 中文字幕亚洲欧美日韩 | 91视频免费观看 | 福利视频入口 | 亚洲人成网站精品片在线观看 | 最近中文字幕免费av | 亚洲日本成人网 | 日本一区二区三区视频在线播放 | 亚洲一区欧美精品 | a黄色片| 久久久免费精品视频 | 国产91精品久久久久 | 中文字幕刺激在线 | 免费看黄色毛片 | 精品美女久久 | 国产精品美女免费视频 | 免费福利视频网站 | 免费看黄的 | 欧美一级爽| 国产中文字幕一区 | 在线电影日韩 | 深爱开心激情 | 日韩理论片在线 | 婷婷亚洲最大 | 色综合天天爱 | 99中文在线 | 亚洲久草视频 | 天天激情综合网 | 精品视频免费在线 | 91九色蝌蚪 | 久久久91精品国产一区二区精品 | 在线观看成人毛片 | 日韩免费成人av | 九九九九九九精品 | 精品福利在线观看 | 97人人模人人爽人人喊中文字 | 五月婷婷在线视频观看 | 三级视频国产 | 日韩在线观看a | 人人草在线视频 | 国产精品白丝jk白祙 | 国产精品九九视频 | 91 在线视频播放 | 精品字幕在线 | 成人久久久久久久久久 | 亚洲午夜久久久影院 | 日本精品一区二区在线观看 | 色香天天 | 日韩电影中文 | 久久国产精品精品国产色婷婷 | 在线观看免费国产小视频 | av色影院 | 96视频在线 | 在线免费观看不卡av | 成人午夜电影免费在线观看 | 99热最新网址| 久久久久国产一区二区三区 | 久草视频在线观 | 中文字幕影片免费在线观看 | 亚洲va欧美va人人爽春色影视 | 成片视频在线观看 | 日本最大色倩网站www | 欧美一级视频一区 | 亚洲成人免费 | 欧美午夜一区二区福利视频 | 欧美一区在线看 | 久久久片 | 精品免费国产一区二区三区四区 | 日韩超碰在线 | 日韩理论电影在线 | 亚洲免费一级 | 国产精品久久久久久婷婷天堂 | av韩国在线 | 成年人免费在线观看网站 | 成年人免费观看国产 | 韩国在线视频一区 | 激情中文字幕 | 国产手机视频精品 | 婷婷黄色片 | 一区二区三区福利 | 91网免费观看 | 免费精品视频在线 | 黄色免费网 | 午夜电影中文字幕 | 色综合久久五月 | 国产亚洲精品女人久久久久久 | 久久久久国产精品免费免费搜索 | 麻豆观看 | 99成人精品| 欧美污污视频 | 日韩v在线| 欧美在线观看视频免费 | 精品高清视频 | 亚州人成在线播放 | 中文字幕 国产 一区 | 久久艹综合 | 亚洲a网 | 国产久草在线 | 97超碰在线免费观看 | 97精产国品一二三产区在线 | 天天插天天狠天天透 | 欧美性直播 | 婷婷性综合 | 亚洲国产免费 | 狠狠狠色丁香综合久久天下网 | 五月综合激情婷婷 | 精品一区精品二区高清 | 久久久久久国产精品免费 | 免费看黄在线 | 国产三级视频在线 | 国产亚洲在线 | 国产只有精品 | 韩国精品在线 | 色欧美88888久久久久久影院 | 国产美女视频免费 | 天天插视频 | 国产视频精品免费 | 亚洲aaa毛片 | 99精品视频免费看 | 狠狠色丁香婷婷综合久小说久 | 免费视频在线观看网站 | 亚洲精品国内 | 婷婷久久五月天 | 欧美精品一区二区三区一线天视频 | 亚州免费视频 | 亚洲综合在线五月天 | 97碰碰精品嫩模在线播放 | 成人国产精品一区 | 精品三级av| www九九热 | 亚洲成人av影片 | 91久久精品一区二区二区 | 97免费中文视频在线观看 | 国产在线一区观看 | 国产人在线成免费视频 | 最近能播放的中文字幕 | 色噜噜噜噜| 激情综合网五月激情 | 国产小视频网站 | 国产中文字幕一区二区三区 | 日韩网站视频 | 欧美一二区在线 | 国产精品6 | 午夜精品一区二区国产 | 亚洲精品视频免费看 | 免费能看的黄色片 | 人人澡人人爽 | 日韩欧美在线高清 | 日日夜夜精品视频 | 在线91播放 | 精品999久久久 | 麻豆va一区二区三区久久浪 | 国产精品久久久久久久久久久久久久 | 超碰在线天天 | 色噜噜在线观看视频 | 开心激情五月网 | 久久超碰网 | 久久精品在线视频 | 天天干天天操 | 91久久国产综合精品女同国语 | 色香网 | 欧美日韩精品久久久 | 天天操天天能 | 色综合久久精品 | 日免费视频 | av电影免费看 | 久久国产成人午夜av影院潦草 | 九草在线视频 | 亚洲精品高清在线 | 99久久久久成人国产免费 | 国产男女免费完整视频 | 国产精品久久视频 | 久久网站最新地址 | 黄色网址在线播放 | 精品自拍sae8—视频 | 九草视频在线 | 日韩一级黄色片 | 中文字幕在线观看一区二区三区 | 国产美女被啪进深处喷白浆视频 | 国产精品久久久久久妇 | 色久综合 | 手机在线日韩视频 | 色a在线观看 | 在线看小早川怜子av | 国产区精品在线 | 一区二区三区在线视频观看58 | 最近中文字幕完整高清 | 美女视频久久 | 欧美国产日韩在线视频 | 美女在线观看网站 | 天堂av在线网址 | 成年人黄色免费看 | 不卡电影免费在线播放一区 | 亚洲精品视频在线观看免费视频 | 亚洲香蕉在线观看 | 在线观看网站黄 | 涩涩网站在线看 | 91色在线观看视频 | 国产黄色在线网站 | 亚洲黄色在线观看 | 国产一区网址 | 色婷婷综合成人av | 在线精品观看国产 | 午夜免费久久看 | 探花视频在线观看免费 | 日韩草比 | 在线不卡中文字幕播放 | 国产精品24小时在线观看 | 91在线公开视频 | 日韩大片免费观看 | 天天干天天拍天天操天天拍 | 国产高清免费观看 | 成人黄色在线 | 久久97精品 | 午夜精品一区二区三区视频免费看 | 成年人免费看的视频 | 人人干天天干 | 国产破处精品 | 天天久久夜夜 | 国产黄色片网站 | 国产精品青草综合久久久久99 | 在线看一级片 | 久久精品aaa| 日韩欧美成人网 | 免费网站黄 | 视频一区二区国产 | 美女视频又黄又免费 | 69精品久久 | 国产亚洲午夜高清国产拍精品 | 中文字幕在线视频第一页 | 国产成在线观看免费视频 | 国产永久免费观看 | 国产精品久久久久久久久岛 | 狠狠操影视 | 亚洲女人天堂成人av在线 | 国产视频欧美视频 | 伊人欧美 | 免费福利片2019潦草影视午夜 | 91精品亚洲影视在线观看 | av成人在线电影 | 中文国产在线观看 | 99热最新 | 18久久久久| 精品国产欧美一区二区 | 99免费在线播放99久久免费 | 欧美成人aa | 在线观看视频日韩 | 五月天亚洲综合小说网 | 一级黄色在线视频 | 久久精品久久99精品久久 | av电影不卡在线 | 日韩精品在线视频免费观看 | 99这里只有精品视频 | 欧美国产精品久久久久久免费 | 天天操天天拍 | 天天操天天干天天爱 | 欧美射射射 | 91精品欧美一区二区三区 | 久久一级片 | 亚洲精品国产精品国自产在线 | 亚洲,国产成人av | 欧美精品久久久久久久久久久 | 国产在线更新 | 国产成人av电影 | 99精品在线直播 | 国产特级毛片aaaaaa高清 | 五月激情久久久 | av资源中文字幕 | 久久久精品视频网站 | 日韩欧美一区二区三区黑寡妇 | 欧美精品亚洲精品 | 91成人精品 | 在线高清| 人人爽人人澡 | 久精品在线观看 | 青青河边草观看完整版高清 | 欧美日韩精品影院 | 国产成人不卡 | 国内一级片在线观看 | 日本高清中文字幕有码在线 | 黄色的片子 | 国产日韩精品一区二区 | 日韩精品久久久久久久电影竹菊 | 成人精品一区二区三区电影免费 | 久久久亚洲麻豆日韩精品一区三区 | 99精品在线免费 | av免费网页| 欧美午夜性生活 | 国产精品久久久久久69 | 欧美日本不卡 | 欧美另类亚洲 | 久草9视频 | 96精品视频 | 精品一二三区视频 | 综合伊人久久 | 视频一区视频二区在线观看 | 国产亚洲免费的视频看 | 久草在线在线精品观看 | 亚洲精品网址在线观看 | 91网站免费观看 | 在线播放国产一区二区三区 | 91在线在线观看 | 日本丶国产丶欧美色综合 | 91精彩在线视频 | 狠狠网亚洲精品 | 婷婷av电影| 久久国产电影院 | 亚洲欧美成人 | 日本高清久久久 | 六月丁香综合网 | 欧洲一区二区三区精品 | 亚洲精品资源在线 | 久久av网| 成人v| 日韩色爱 | 亚洲在线视频播放 | www.国产毛片 | 黄色成人av | 制服丝袜成人在线 | 国产免费av一区二区三区 | 天天操夜夜逼 | 亚洲黄色小说网 | 欧美成人播放 | 国产免费又爽又刺激在线观看 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 一区二区理论片 | 国产综合福利在线 | 97视频人人澡人人爽 | 国产精品原创在线 | 日韩成人不卡 | 亚洲三级在线免费观看 | 欧美日韩精品国产 | 不卡日韩av | 五月天色站 | 深夜男人影院 | 国产在线看 | 91中文字幕网 | 国产剧情在线一区 | 久草在线视频资源 | 尤物一区二区三区 | 色是在线视频 | 三级av在线免费观看 | 免费av片在线 | 中文字幕4| 精品国产激情 | 在线观看的av | 久久经典国产 | 91视频免费网站 | 黄色片网站大全 | 天天操婷婷| 国产91影视 | 美女精品国产 | 日韩视频中文字幕 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 亚洲国产一区在线观看 | 久久理论电影 | 99麻豆久久久国产精品免费 | 97人人模人人爽人人喊网 | 久久视讯 | 在线91精品 | 狠狠干夜夜操天天爽 | 成人免费观看视频网站 | 天天视频亚洲 | 国产高清一区二区 | 五月婷婷激情网 | 色婷婷六月| 久久久久久国产精品久久 | 国产精品乱码一区二区视频 | 97精品久久 | av电影中文字幕 | 亚洲精品字幕 | 特级毛片爽www免费版 | 久久久久久免费视频 | 黄色国产高清 | 天天碰天天操 | 国产精品久久久久久电影 | 啪啪资源 | 久久国产精品99国产精 | 婷婷丁香花五月天 | 精品婷婷 | 中文字幕av一区二区三区四区 | 久久精品精品 | 亚洲欧美日韩国产一区二区三区 | 免费久久片| 国产精品99免费看 | 久久视频网址 | 天天综合网 天天综合色 | 国产精品激情偷乱一区二区∴ | 日韩一级电影网站 | 国产综合片 | 久久久久女教师免费一区 | 色综合久久久久久中文网 | 正在播放 国产精品 | 日韩国产精品久久久久久亚洲 | 久久久久久久久久久福利 | 99在线精品视频 | 亚洲一区二区三区91 | 日本中文一区二区 | 毛片精品免费在线观看 | 欧美另类z0zx| 中文字幕一区二区三区在线播放 | 激情婷婷欧美 | 最新在线你懂的 | 7777xxxx| 中文字幕一区二区三区四区在线视频 | se婷婷| 91一区二区在线 | 国产精品国产三级国产aⅴ无密码 | 精品国产乱码久久久久久天美 | 国产综合激情 | 久久国产精品系列 | 久久97视频 | 少妇自拍av| 国产精品原创av片国产免费 | 啪啪午夜免费 | 国产手机视频 | 欧美日韩一区二区在线观看 | 色婷婷亚洲精品 | 日韩av影视在线观看 | 久热免费在线 | 超碰97在线人人 | 国产成人精品亚洲日本在线观看 | 免费色网站| 国产成人一区二区三区免费看 | 西西4444www大胆无视频 | 在线探花| 色99色| 久久久网址 | 韩国av在线播放 | 中文字幕在线播放一区二区 | 四虎免费在线观看 | 激情五月五月婷婷 | www.狠狠 | 日本最新高清不卡中文字幕 | 特黄特黄的视频 | 久热av在线 | 日韩免费一级a毛片在线播放一级 | 色播亚洲婷婷 | 免费在线91 | 久久伊人精品天天 | 久久精品一区二区三区中文字幕 | 制服丝袜在线91 | 五月天婷婷在线视频 | 国产在线视频一区二区 | 视频成人免费 | 狠狠色丁香婷婷综合基地 | 色综合天天色 | 成人h在线播放 | 国产一级黄大片 | 99久久er热在这里只有精品15 | 亚洲精选99 | 亚洲人在线7777777精品 | 久久国产精品99精国产 | 国产精品视频资源 | 久日视频| 三级黄色网址 | 欧美日韩视频免费看 | 久久久久久综合网天天 | 91激情在线视频 | 久久伊人热 | 91丨porny丨九色 | 亚洲精品国产高清 | 欧美激情精品一区 | 久久国产影院 | 欧美成人69av| 男女激情麻豆 | 日韩成人欧美 | 成人亚洲网 | 欧美日韩精品免费观看视频 | 国产成人精品久久久 | 欧美亚洲国产日韩 | 91福利社区在线观看 | 96av麻豆蜜桃一区二区 | 天天干天天天天 | 欧美日韩天堂 | 四虎影视欧美 | 天天操天天干天天综合网 | 国产最新视频在线观看 | 超碰在线97国产 | 亚洲国产精品久久久久久 | 亚洲最新av在线网址 | 天天躁日日躁狠狠 | 日b黄色片 | 天天搞天天 | 国产精品1区2区3区在线观看 | 亚洲网站在线 | 中文字幕乱码日本亚洲一区二区 | 亚洲精品久久久久中文字幕二区 | 久久精品小视频 | 日韩视频免费观看高清完整版在线 | 美女视频黄网站 | 欧美日韩精品免费观看 | 久草电影网 | 精品国产_亚洲人成在线 | 日本精品在线 | 国产精品乱码久久 | 国产一区二区观看 | 国产黄色av网站 | 国产欧美在线一区 | 丁香六月婷婷开心婷婷网 | 亚洲国产视频a | 欧美日韩综合在线 | 成人动漫一区二区 | 免费日韩高清 | 7777精品伊人久久久大香线蕉 | 国产精品毛片一区二区三区 | 婷婷色综合 | 欧美性生活小视频 | 亚洲免费在线观看视频 | 欧美成人在线网站 | 六月丁香社区 | 国产精品久久久久久吹潮天美传媒 | www.色午夜 | 亚洲欧洲av在线 | 97精品在线观看 | 免费高清看电视网站 | 久久久久久久久久网 | 91精品一区国产高清在线gif | 久久精品精品电影网 | 91麻豆.com | 天堂va在线观看 | 四虎国产永久在线精品 | 五月天亚洲激情 | av看片在线 | 国产在线播放观看 | 国产一在线精品一区在线观看 | 欧洲亚洲精品 | 成人小视频在线 | 99久久综合精品五月天 | 青青草国产免费 | 91视频在线国产 | 九九亚洲精品 | 亚洲综合在线五月天 | 天天干天天射天天插 | 日韩欧美精品在线 | 精品国模一区二区 | 中文在线a∨在线 | 色九九在线 | 久久精品一区二区三区四区 | 日本精品久久久一区二区三区 | 亚洲激情视频 | 91精彩视频 | av看片在线观看 | 成年人电影免费在线观看 | 中文有码在线 | 免费网址你懂的 | 欧美在线视频一区二区三区 | 国产亚洲精品xxoo | 伊人色播 | 国产91精品一区二区麻豆亚洲 | 99re视频在线观看 | 在线97| 69视频永久免费观看 | 日本黄色黄网站 | 中文字幕在线观看视频一区二区三区 | 久久小视频| 中文字幕一区二区三区四区在线视频 | 五月婷婷综合久久 | 日韩在线| 午夜美女网站 | 午夜久久久久久久久 | 国产高清中文字幕 | 日韩av电影一区 | 日本中文字幕久久 | 成人av在线网址 | 国产露脸91国语对白 | 草 免费视频 | 91精品久久久久久久久久久久久 | 亚洲国内精品在线 | 黄色www| 国产精品久久久久久一区二区三区 | 久草视频在线新免费 | 国产v视频 | 亚洲在线综合 | 日韩天天综合 | 美女网站免费福利视频 | 免费看在线看www777 | 国产精品自产拍 | 久久99亚洲热视 | 亚洲综合爱 | 特黄免费av | 综合久久网站 | 亚欧洲精品视频在线观看 | 国产精品久久麻豆 | av在线收看 | 天天干,天天射,天天操,天天摸 | 999国内精品永久免费视频 | 丝袜护士aⅴ在线白丝护士 天天综合精品 | 麻豆94tv免费版 | 激情av网址| 久久婷婷色综合 | 久久视频免费在线 | 国产一级精品在线观看 | 日本不卡一区二区 | 在线成人国产 | 97人人澡人人添人人爽超碰 | 久草在线中文888 | 免费午夜在线视频 | 亚洲aaa毛片| 99精品国产99久久久久久97 | 日本中文字幕高清 | 91亚洲网 | 国内久久久| 天天干天天摸 | 手机av在线网站 | 色婷婷国产 | 中文字幕免费观看全部电影 | 天天操福利视频 | 成人片在线播放 | 97国产超碰在线 | 欧美日韩亚洲第一 | 女人18精品一区二区三区 | 日韩中文免费视频 | 黄色免费看片网站 | 精品五月天| 亚洲国产精品女人久久久 | 国产精品1000| 99色亚洲 | 婷婷电影在线观看 | 免费在线观看一级片 | 色六月婷婷| 91在线九色 | 插综合网| 黄色小说视频网站 | 99久热在线精品视频观看 | se视频网址| 久久艹免费 | 婷婷在线免费观看 | 91在线视频观看免费 | 又黄又刺激又爽的视频 | 日韩欧美精选 | 中文av日韩| 一区二区三区福利 | 久久国精品 | 国产视频 亚洲精品 | 日韩黄在线观看 | 亚洲精品欧美专区 | 国产只有精品 | 美女精品网站 | 99精品视频在线播放免费 | 国产一区二区在线免费 | 国产美女在线观看 | 成人午夜影院 | 色综合a | 久久综合久久八八 | 久久99精品久久久久婷婷 | a视频免费在线观看 | 最新av网址在线观看 | 日韩理论在线播放 | 六月丁香婷婷在线 | 国产亚洲欧美精品久久久久久 | 天天操天天色综合 | 激情校园亚洲 | av大片网址 | 亚洲精品福利在线观看 | 久草91视频 | 黄色成人影院 | 日日干日日 | 成人影视片 | 久草电影免费在线观看 | 国产亚洲精品美女 | 欧美在线91 | 精品一区二区影视 | 欧美日韩视频一区二区三区 | 特级西西444www高清大视频 | 国产丝袜高跟 | 中文字幕日韩伦理 | 中文字幕乱在线伦视频中文字幕乱码在线 | www毛片com| 国产精品亚洲精品 | 成人在线一区二区三区 | 国产精品入口麻豆www | 日本激情动作片免费看 | 91成人精品在线 | av中文字幕在线免费观看 | 91亚洲精品久久久蜜桃网站 | 亚州av成人| 日本中文字幕系列 | 国产精品18久久久久白浆 | 日韩影视在线观看 | 超碰97国产| 久久成人午夜视频 | 国产精品爽爽久久久久久蜜臀 | 69国产成人综合久久精品欧美 | 久久久999免费视频 日韩网站在线 | 国产理论免费 | 国产精品s色 | 日韩精品一区不卡 | 香蕉视频在线播放 | 欧美美女激情18p | 亚洲午夜久久久综合37日本 | 国产1区2 | 中文字幕永久 | 黄色的网站免费看 | 久久免费视频7 | 91亚洲精品久久久蜜桃借种 | 一区二区 不卡 | 深夜免费福利网站 | 久久精品视频免费播放 | 国产亚洲精品久久久久久久久久 | 嫩草伊人久久精品少妇av | 国产成人久久精品 | 日韩在线视频播放 | 一级电影免费在线观看 | 欧美日韩高清一区 | 999久久久久久久久6666 | 欧美日韩视频在线 | 激情婷婷在线 | 色婷婷亚洲综合 | 欧美精品一区二区蜜臀亚洲 | 久久视频精品在线 | 日韩在线国产精品 | 天天色天天操天天爽 | 免费欧美高清视频 | 国产精品四虎 | 中文字幕亚洲字幕 | av在线播放亚洲 | 国产流白浆高潮在线观看 | 超碰免费在线公开 | 天天激情 | 日韩免费高清 | 日韩av视屏在线观看 | 精品99免费| 又黄又爽的免费高潮视频 | 国产免费观看高清完整版 | av+在线播放在线播放 | 日韩免费av网址 | 久久久黄色免费网站 | 国产91成人 | 欧美在线观看小视频 | 日b视频在线观看网址 | 深爱激情五月综合 | 久久久久久不卡 | 亚洲乱码国产乱码精品天美传媒 | 亚洲一区二区天堂 | 亚洲区视频在线观看 | 亚洲精品国产品国语在线 | 成年人在线免费看片 | 狠狠干成人综合网 | 99性视频| 91精品久久久久久久久久久久久 | 97超碰中文字幕 | 中文字幕有码在线播放 | 天天操夜 | 国产手机在线 | 国产高清日韩 | 蜜臀av性久久久久av蜜臀妖精 | av电影一区二区三区 | 亚洲成av片人久久久 | 婷婷综合五月 | 日本久久久亚洲精品 | 91视频啪 | 91福利影院在线观看 | 高潮久久久久久久久 | 天天射天天 | 成人黄色在线播放 | 久久国产精品二国产精品中国洋人 | 国产成人精品综合久久久久99 | 久久免费精品视频 | 亚洲狠狠干| 国产成人精品区 | 天堂av在线中文在线 | 一区二区三区韩国免费中文网站 | 精品国产一区二区三区久久 | 91麻豆看国产在线紧急地址 | 18av在线视频| 欧美日韩69 | 在线免费视 | www.少妇 | 久久综合桃花 | 精品久久久久一区二区国产 | 99久久爱 | 欧美成人中文字幕 | 久久99电影 | 亚洲精品中文在线观看 | 欧美-第1页-屁屁影院 | 亚洲综合在 | 久久高清免费观看 | 干亚洲少妇 | 亚洲 成人 欧美 | 免费在线观看毛片网站 | 国产福利一区在线观看 | 久久免费视频在线观看30 | 天天爽天天爽天天爽 | 一本一道久久a久久综合蜜桃 | 丁香五香天综合情 | 99精品福利视频 | 欧美日韩中文字幕在线视频 | 国产片免费在线观看视频 | 中文字幕在线中文 | 国产免费又粗又猛又爽 | 深爱激情五月综合 | 色婷婷88av视频一二三区 | 国产日韩精品欧美 | 久久网站av| 一级片色播影院 | 成人国产精品免费 | 丁香午夜| 国产亚洲精品久久久久久移动网络 | 亚洲狠狠婷婷综合久久久 | 国产999精品久久久久久 | 天天操天天插 | 日韩视频在线不卡 | 久久一区91 | 狠狠干狠狠插 | 欧美色就是色 | 激情五月伊人 | 中文字幕免费观看全部电影 | 婷婷在线综合 | 婷婷网五月天 | 精品1区二区 | 亚洲永久精品一区 | 欧美精品一区二区三区一线天视频 | 国产精品第52页 | 精品福利在线视频 | 狠狠干在线播放 | 免费看黄视频 | 久久国产网站 | 色多多污污在线观看 | 高清av网 | 中文字幕有码在线播放 | 中文字幕免费在线看 | www.av免费观看| www.色五月.com | 久久久污 | 狠狠干2018 | 精品久久久999 | 国产亚洲精品久久久久久无几年桃 | 97超碰国产精品 | 欧洲av不卡 | 7777xxxx | 黄色大全免费网站 | 日韩成人免费在线 | 二区在线播放 | 日韩中文字幕视频在线 | 久久精品精品 | 欧美aaa视频 | 日日草夜夜操 | 激情久久影院 | 在线观看国产高清视频 | 91中文视频 | 国产成人一区二区精品非洲 | 精品国产美女在线 | 国产精品久久久久婷婷 | 日韩欧美精品在线 | 久久久国产精品一区二区三区 | 国内一区二区视频 | 亚洲天堂色婷婷 | 免费网址在线播放 | 九九免费在线观看视频 | 国产精品久久久av久久久 | 久草精品视频 | 97国产大学生情侣酒店的特点 | 成人av影视| 成人av中文字幕在线观看 | 亚洲电影影音先锋 | 狠狠操.com | 久草视频免费观 | 黄色小网站在线观看 | 亚洲好视频 | 91在线超碰 | 久久久久成人精品免费播放动漫 | 男女视频国产 | 日本在线视频网址 | 少妇高潮流白浆在线观看 | 久久久久激情 | 黄色免费电影网站 | 国产成人一区二区三区在线观看 | 中文字幕字幕中文 | 五月天婷婷在线观看视频 | 亚洲无人区小视频 | 色视频网站在线观看一=区 a视频免费在线观看 | 色婷婷啪啪免费在线电影观看 | 91九色视频在线观看 | 中文乱幕日产无线码1区 | 欧美一区二区在线免费看 | 天天曰天天曰 | 天天色天天爱天天射综合 | 天堂va欧美va亚洲va老司机 | a一片一级 | 色综合久久久久久久久五月 | 亚洲精品免费在线观看视频 | 激情婷婷 | 少妇性色午夜淫片aaaze | 日本一区二区免费在线观看 | 一区 在线 影院 | 国产 视频 高清 免费 | 成人一区二区在线观看 | 最新日韩电影 | 香蕉久久久久久av成人 | 日韩字幕在线观看 | 中文字幕高清在线播放 | 国产精品一区在线 | 精品福利片 | 国产精品不卡av | 国产无吗一区二区三区在线欢 | 欧美日韩国产精品爽爽 | 欧美激情精品久久 | 亚洲伦理精品 | 日韩av福利在线 | 日韩av一区在线观看 | 久久精品一区 | 丁香午夜婷婷 | 久久公开免费视频 | 99视频这里有精品 | 欧美在线观看视频一区二区三区 | 丁香婷婷电影 | 四虎永久免费网站 | 中文字幕av网站 | 亚洲精品久久久久中文字幕二区 | 色婷婷久久久综合中文字幕 | 国产剧情在线一区 | 久草香蕉在线视频 | 国产精品色在线 | 一区二区av | 久久天堂精品视频 | 色婷婷啪啪免费在线电影观看 | 激情 婷婷 | 成人av一区二区兰花在线播放 | 99久久精品电影 | 欧美视频在线二区 | 精品视频亚洲 | 国产福利a | 久久午夜电影 | 国产高清视频网 | 国产资源网 | a天堂免费 | av电影在线观看 | 欧美日韩精品区 | 看v片| 一区二区视频网站 | 日韩中文在线字幕 | 国产精品久久网 | 黄网站www | 国产视频一区二区在线播放 | 五月天婷亚洲天综合网精品偷 | 欧美看片| 欧美日韩精品在线播放 | 美女av免费看| 欧美一区二区三区在线 | av东方在线| 97超碰在线久草超碰在线观看 | 在线观看视频一区二区三区 | 91免费试看 | 六月婷婷久香在线视频 |