亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

某次模擬考試day2t3 菊菊的數(shù)據(jù)結(jié)構(gòu)

2019-11-10 20:18:47
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

【題目描述】菊菊是一個(gè)碼農(nóng),他很喜歡碼一些高(e)級(jí)(xin)數(shù)據(jù)結(jié)構(gòu)。有一天,菊菊在打網(wǎng)賽時(shí)遇到了 wfj。wfj 覺(jué)得他很有前途,可以做下一代碼農(nóng)大神。于是乎,wfj 給菊菊出了一道題,來(lái)檢驗(yàn)一下菊菊的代碼能力:這是一個(gè)簡(jiǎn)單的數(shù)據(jù)結(jié)構(gòu)題,你只需在樹(shù)上維護(hù)如下幾個(gè)簡(jiǎn)單操作:type=1:樹(shù)上單點(diǎn)修改,給定 x,v,把 x 的值改為 v。type=2:樹(shù)上子樹(shù)修改,給定 x,v,把 x 子樹(shù)上的所有數(shù)加上 v。type=3:樹(shù)上路徑修改,給定 x,y,v,把 x 到 y 路徑上的所有數(shù)加上 v。type=4:樹(shù)上單點(diǎn)查詢,給定 x,查詢 x 的值。type=5:樹(shù)上子樹(shù)查詢,給定 x,查詢子樹(shù) x 的和。type=6:樹(shù)上路徑查詢,給定 x,y,查詢 x 到 y 路徑上數(shù)的和。wfj 想了很久,覺(jué)得這題太容易了,沒(méi)有任何意義。所以,在上面這些操作完成以后,他還要求菊菊完成另外一些操作:type=7:樹(shù)上子樹(shù)查詢區(qū)間第 k 小,給定 x,k,求 x 子樹(shù)上第 k 小值。type=8:樹(shù)上子樹(shù)查詢比給定數(shù)小的數(shù)的個(gè)數(shù),給定 x,k,求 x 子樹(shù)上比 k 小的數(shù)的個(gè)數(shù)。type=9:樹(shù)上路徑查詢區(qū)間第 k 小,給定 x,y,k(huaji.jpg),求 x 到 y 路徑上的區(qū)間第 k 小。type=10:樹(shù)上路徑查詢比給定數(shù)小的數(shù)的個(gè)數(shù),給定 x,y,k,求 x 到 y 路徑上比 k 小的數(shù)的個(gè)數(shù)。wfj 又想了很久,覺(jué)得這題可以了。然而這時(shí),菊菊對(duì)他說(shuō):“這也太容易了吧!我半小時(shí)就能 AC!”于是 wfj 怒了。他想:這個(gè) sb,我再加一問(wèn),不信他寫(xiě) 得出。于是,wfj加了最后一問(wèn):對(duì)于這棵樹(shù),請(qǐng)求出這棵樹(shù)中<=k 的路徑條數(shù),其中,k 為給定值。菊菊是一個(gè)智商特別高的編程天才,他身上帶了電腦,但他這回做不出來(lái)了,所以他委托你——一位植樹(shù)工人來(lái)完成這個(gè)游戲。你能幫幫他嗎?【輸入數(shù)據(jù)】第一行包括兩個(gè)整數(shù) N,表示這顆樹(shù)的結(jié)點(diǎn)數(shù)。接下來(lái)一行包括 N 個(gè)整數(shù) Ai,表示 N 個(gè)結(jié)點(diǎn)初始權(quán)值。接下來(lái)有 N-1 行,每行兩個(gè)數(shù) x,y,表示 x 和 y 之間有邊相連。接下來(lái)一行包括一個(gè)整數(shù) M1,表示第一問(wèn)的詢問(wèn)數(shù)。接下來(lái) M1 行每行包括一個(gè)數(shù) type,后接幾個(gè)數(shù):type=1:輸入 x,v。type=2:輸入 x,v。type=3:輸入 x,y,v。type=4:輸入 x。type=5:輸入 x。type=6:輸入 x,y。接下來(lái)一行一個(gè)數(shù) M2,表示第二問(wèn)的詢問(wèn)數(shù)。接下來(lái) M2 行:type=7:輸入 x,k。type=8:輸入 x,k。type=9:輸入 x,y,k。type=10:輸入 x,y,k。

最后一行一個(gè)整數(shù) k。以上輸入意義見(jiàn)題中所述?!据敵鰯?shù)據(jù)】對(duì)于每個(gè)查詢操作,每行輸出一個(gè)答案。最后一行為最后一問(wèn)的答案?!据斎霕永?1】500000122324356134432133342546344722835934210 4 5 23【輸出樣例 1】4519515010【輸入樣例 2、3】見(jiàn)下發(fā)樣例文件?!据敵鰳永?2、3】見(jiàn)下發(fā)樣例文件?!緮?shù)據(jù)約定】對(duì)于 30%的數(shù)據(jù),滿足 N<=3000。M1,M2<=3000。對(duì)于 100%的數(shù)據(jù),滿足 N<=100000。M1,M2<=100000。(ps:簡(jiǎn)單送肉板子題,應(yīng)該有人 AC 吧。。)

正解:樹(shù)鏈剖分+線段樹(shù)+主席樹(shù)+點(diǎn)分治。

全部是板子,出了這道題為了訓(xùn)練代碼能力??紙?chǎng)上無(wú)人寫(xiě)出正解,1人寫(xiě)對(duì)30分暴力。。

//It is made by wfj_2048~#include <algorithm>#include <iostream>#include <cstring>#include <cstdlib>#include <cstdio>#include <vector>#include <cmath>#include <queue>#include <stack>#include <map>#include <set>#define N (100010)#define inf (1<<30)#define lson (x<<1)#define rson (x<<1|1)#define il inline#define RG register#define ll long long#define File(s) freopen(s".in","r",stdin),freopen(s".out","w",stdout)using namespace std;struct edge{	ll nt,to;} g[2*N];ll head[N],top[N],fa[N],son[N],size[N],dep[N],dfn[N],pos[N],cur[N],vis[N],dis[N],a[N],W[N],num[N],hsh[N],root1[N],root2[N],lazy[4*N],sum[4*N],sum1[20*N],sum2[20*N],ls1[20*N],rs1[20*N],ls2[20*N],rs2[20*N],n,ssz,sz,sz1,sz2,cnt,tot,root,limit,ans;il ll gi(){	RG ll x=0,q=1;	RG char ch=getchar();	while ((ch<'0' || ch>'9') && ch!='-') ch=getchar();	if (ch=='-') q=-1,ch=getchar();	while (ch>='0' && ch<='9') x=x*10+ch-48,ch=getchar();	return q*x;}il void insert(RG ll from,RG ll to){	g[++sz]=(edge) {head[from],to},head[from]=sz;	return;}il void dfs1(RG ll x,RG ll p){	dep[x]=dep[p]+1,fa[x]=p,size[x]=1;	RG ll v,mx=0;	for (RG ll i=head[x]; i; i=g[i].nt)	{		v=g[i].to;		if (v==p) continue;		dfs1(v,x);		size[x]+=size[v];		if (size[mx]<=size[v]) mx=v;	}	son[x]=mx;	return;}il void dfs2(RG ll x,RG ll p,RG ll a){	top[x]=a,dfn[x]=++cnt,pos[cnt]=x;	if (son[x]) dfs2(son[x],x,a);	RG ll v;	for (RG ll i=head[x]; i; i=g[i].nt)	{		v=g[i].to;		if (v==p || v==son[x]) continue;		dfs2(v,x,v);	}	return;}il void down(RG ll x,RG ll l,RG ll r){	RG ll mid=(l+r)>>1;	sum[lson]+=lazy[x]*(mid-l+1),sum[rson]+=lazy[x]*(r-mid);	lazy[lson]+=lazy[x],lazy[rson]+=lazy[x],lazy[x]=0;	return;}il void build(RG ll x,RG ll l,RG ll r){	if (l==r)	{		sum[x]=a[pos[l]];		return;	}	RG ll mid=(l+r)>>1;	build(lson,l,mid);	build(rson,mid+1,r);	sum[x]=sum[lson]+sum[rson];	return;}il void update(RG ll x,RG ll l,RG ll r,RG ll xl,RG ll xr,RG ll v,RG ll flag){	if (xl<=l && r<=xr)	{		if (flag) sum[x]+=(r-l+1)*v,lazy[x]+=v;		else sum[x]=v;		return;	}	if (lazy[x]) down(x,l,r);	RG ll mid=(l+r)>>1;	if (xr<=mid) update(lson,l,mid,xl,xr,v,flag);	else if (xl>mid) update(rson,mid+1,r,xl,xr,v,flag);	else	{		update(lson,l,mid,xl,mid,v,flag);		update(rson,mid+1,r,mid+1,xr,v,flag);	}	sum[x]=sum[lson]+sum[rson];	return;}il ll query(RG ll x,RG ll l,RG ll r,RG ll xl,RG ll xr){	if (xl<=l && r<=xr) return sum[x];	if (lazy[x]) down(x,l,r);	RG ll mid=(l+r)>>1;	if (xr<=mid) return query(lson,l,mid,xl,xr);	else if (xl>mid) return query(rson,mid+1,r,xl,xr);	else return query(lson,l,mid,xl,mid)+query(rson,mid+1,r,mid+1,xr);}il void change(RG ll u,RG ll v,RG ll w){	while (top[u]!=top[v])	{		if (dep[top[u]]<dep[top[v]]) swap(u,v);		update(1,1,n,dfn[top[u]],dfn[u],w,1);		u=fa[top[u]];	}	if (dep[u]>dep[v]) swap(u,v);	update(1,1,n,dfn[u],dfn[v],w,1);	return;}il ll Query(RG ll u,RG ll v){	RG ll res=0;	while (top[u]!=top[v])	{		if (dep[top[u]]<dep[top[v]]) swap(u,v);		res+=query(1,1,n,dfn[top[u]],dfn[u]);		u=fa[top[u]];	}	if (dep[u]>dep[v]) swap(u,v);	res+=query(1,1,n,dfn[u],dfn[v]);	return res;}il ll lca(RG ll u,RG ll v){	while (top[u]!=top[v])	{		if (dep[top[u]]<dep[top[v]]) swap(u,v);		u=fa[top[u]];	}	return dep[u]>dep[v] ? v : u;}il void kth1build(RG ll x,RG ll &y,RG ll l,RG ll r,RG ll v){	sum1[y=++sz1]=sum1[x]+1,ls1[y]=ls1[x],rs1[y]=rs1[x];	if (l==r) return;	RG ll mid=(l+r)>>1;	if (v<=mid) kth1build(ls1[x],ls1[y],l,mid,v);	else kth1build(rs1[x],rs1[y],mid+1,r,v);	return;}il ll kth1query1(RG ll x,RG ll y,RG ll k){	RG ll l=1,r=tot,mid,tmp;	while (l<r)	{		mid=(l+r)>>1,tmp=sum1[ls1[y]]-sum1[ls1[x]];		if (k<=tmp) r=mid,x=ls1[x],y=ls1[y];		else l=mid+1,k-=tmp,x=rs1[x],y=rs1[y];	}	return hsh[l];}il ll kth1query2(RG ll x,RG ll y,RG ll k){	if (!k) return 0;	RG ll l=1,r=tot,mid,ans=0;	while (l<r)	{		mid=(l+r)>>1;		if (k<=mid) r=mid,x=ls1[x],y=ls1[y];		else		{			ans+=sum1[ls1[y]]-sum1[ls1[x]];			l=mid+1,x=rs1[x],y=rs1[y];		}	}	return ans+sum1[y]-sum1[x];}il void kth2build(RG ll x,RG ll &y,RG ll l,RG ll r,RG ll v){	sum2[y=++sz2]=sum2[x]+1,ls2[y]=ls2[x],rs2[y]=rs2[x];	if (l==r) return;	RG ll mid=(l+r)>>1;	if (v<=mid) kth2build(ls2[x],ls2[y],l,mid,v);	else kth2build(rs2[x],rs2[y],mid+1,r,v);	return;}il ll kth2query1(RG ll u,RG ll v,RG ll k){	RG ll Lca=lca(u,v),l=1,r=tot,mid,tmp;	RG ll a=root2[dfn[u]],b=root2[dfn[v]];	RG ll c=root2[dfn[Lca]],d=root2[dfn[fa[Lca]]];	while (l<r)	{		mid=(l+r)>>1,tmp=sum2[ls2[a]]+sum2[ls2[b]]-sum2[ls2[c]]-sum2[ls2[d]];		if (k<=tmp) r=mid,a=ls2[a],b=ls2[b],c=ls2[c],d=ls2[d];		else k-=tmp,l=mid+1,a=rs2[a],b=rs2[b],c=rs2[c],d=rs2[d];	}	return hsh[l];}il ll kth2query2(RG ll u,RG ll v,RG ll k){	if (!k) return 0;	RG ll Lca=lca(u,v),l=1,r=tot,mid,ans=0;	RG ll a=root2[dfn[u]],b=root2[dfn[v]],c=root2[dfn[Lca]],d=root2[dfn[fa[Lca]]];	while (l<r)	{		mid=(l+r)>>1;		if (k<=mid) r=mid,a=ls2[a],b=ls2[b],c=ls2[c],d=ls2[d];		else		{			ans+=sum2[ls2[a]]+sum2[ls2[b]]-sum2[ls2[c]]-sum2[ls2[d]],l=mid+1;			a=rs2[a],b=rs2[b],c=rs2[c],d=rs2[d];		}	}	return ans+sum2[a]+sum2[b]-sum2[c]-sum2[d];}il void dfs3(RG ll x){	kth2build(root2[dfn[fa[x]]],root2[dfn[x]],1,tot,num[dfn[x]]);	for (RG ll i=head[x]; i; i=g[i].nt)	{		RG ll v=g[i].to;		if (v==fa[x]) continue;		dfs3(v);	}	return;}il void getroot(RG ll x,RG ll p){	size[x]=1,son[x]=0;	for (RG ll i=head[x]; i; i=g[i].nt)	{		RG ll v=g[i].to;		if (vis[v] || v==p) continue;		getroot(v,x);		size[x]+=size[v];		son[x]=max(son[x],size[v]);	}	son[x]=max(son[x],son[0]-size[x]);	if (son[x]<son[root]) root=x;	return;}il void getdis(RG ll x,RG ll p){	cur[++ssz]=dis[x];	for (RG ll i=head[x]; i; i=g[i].nt)	{		RG ll v=g[i].to;		if (vis[v] || v==p) continue;		dis[v]=dis[x]+1;		getdis(v,x);	}	return;}il ll cont(RG ll x,RG ll mit){	RG ll res=0;	dis[x]=mit,ssz=0;	getdis(x,0);	sort(cur+1,cur+ssz+1);	for (RG ll l=1,r=ssz; l<r;)		if (cur[l]+cur[r]<=limit) res+=(r-l++);		else r--;	return res;}il void solve(RG ll x){	vis[x]=1;	ans+=cont(x,0);	for (RG ll i=head[x]; i; i=g[i].nt)	{		RG ll v=g[i].to;		if (vis[v]) continue;		ans-=cont(v,1),root=0,son[0]=size[v];		getroot(v,0),solve(root);	}	return;}il void work(){	n=gi();	RG ll m1,m2,u,v,w,x,k,type;	for (RG ll i=1; i<=n; ++i) a[i]=gi();	for (RG ll i=1; i<n; ++i)	{		u=gi(),v=gi();		insert(u,v),insert(v,u);	}	dfs1(1,0),dfs2(1,0,1);	build(1,1,n);	m1=gi();	for (RG ll i=1; i<=m1; ++i)	{		type=gi();		if (type==1)		{			x=gi(),w=gi();			update(1,1,n,dfn[x],dfn[x],w,0);		}		if (type==2)		{			x=gi(),w=gi();			update(1,1,n,dfn[x],dfn[x]+size[x]-1,w,1);		}		if (type==3)		{			u=gi(),v=gi(),w=gi();			change(u,v,w);		}		if (type==4)		{			x=gi();			PRintf("%lld/n",query(1,1,n,dfn[x],dfn[x]));		}		if (type==5)		{			x=gi();			printf("%lld/n",query(1,1,n,dfn[x],dfn[x]+size[x]-1));		}		if (type==6)		{			u=gi(),v=gi();			printf("%lld/n",Query(u,v));		}	}	for (RG ll i=1; i<=n; ++i) num[i]=W[i]=query(1,1,n,i,i);	sort(num+1,num+n+1);	hsh[tot=1]=num[1];	for (RG ll i=2; i<=n; ++i) if (num[i]>num[i-1]) hsh[++tot]=num[i];	for (RG ll i=1; i<=n; ++i) num[i]=lower_bound(hsh+1,hsh+tot+1,W[i])-hsh;	for (RG ll i=1; i<=n; ++i) kth1build(root1[i-1],root1[i],1,tot,num[i]);	dfs3(1);	m2=gi();	for (RG ll i=1; i<=m2; ++i)	{		type=gi();		if (type==7)		{			x=gi(),k=gi();			printf("%lld/n",kth1query1(root1[dfn[x]-1],root1[dfn[x]+size[x]-1],k));		}		if (type==8)		{			x=gi(),k=gi();			if (k>hsh[tot]) k=tot;			else if (k<hsh[1]) k=0;			else k=upper_bound(hsh+1,hsh+tot+1,k)-hsh-1;			printf("%lld/n",kth1query2(root1[dfn[x]-1],root1[dfn[x]+size[x]-1],k));		}		if (type==9)		{			u=gi(),v=gi(),k=gi();			printf("%lld/n",kth2query1(u,v,k));		}		if (type==10)		{			u=gi(),v=gi(),k=gi();			if (k>hsh[tot]) k=tot;			else if (k<hsh[1]) k=0;			else k=upper_bound(hsh+1,hsh+tot+1,k)-hsh-1;			printf("%lld/n",kth2query2(u,v,k));		}	}	limit=gi();	ans=0,root=0,son[0]=n;	getroot(1,0);	solve(root);	printf("%lld/n",ans);	return;}int main(){	File("structure");	work();	return 0;}


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
黄色网页免费在线观看| 日韩在线免费播放| 在线观看av大片| 中文字幕av一区二区三区四区| av免费精品一区二区三区| 免费av观看网站| 亚洲欧美精品一区二区| 怡红院在线观看| 国产一区二区三区四区| 亚洲国产日韩a在线播放性色| 亚洲天堂网站| a中文在线播放| 国产香蕉免费精品视频| 自拍偷拍精选| 91高清视频免费看| 中文字幕高清20页| 国产喷白浆一区二区三区| 亚洲男女在线观看| 黄色视屏网站在线免费观看| 中文字幕一区二区三区不卡在线| 一区二区视频观看| 久久久久久a亚洲欧洲aⅴ| 在线精品亚洲一区二区| 九九久久精品视频| 午夜在线一区二区| 91在线视频免费看| 色老板免费视频| 日本护士做爰视频| 国产精品三级美女白浆呻吟| 污污网站在线| av首页在线观看| 美女视频黄是免费| 欧美性生活一级片| 波多野结衣亚洲一区二区| 亚洲天天影视网| 国产高清在线观看视频| 久久99精品久久久久久野外| 色婷婷av一区二区三区gif| 国产露脸无套对白在线播放| 免费的黄网站在线观看| 国产裸体视频网站| 午夜免费一区| 女囚岛在线观看| 成人免费视频网站入口| 精品久久久久久久久久久久久久| 国产三级黄色片| 成人国产精品| 亚洲国产日韩成人综合天堂| 国产精品av免费观看| 在线观看亚洲a| 欧美一级在线免费观看| 调教视频免费在线观看| 欧美日韩亚洲一区二| 亚洲三级黄色片| 久久久亚洲精品视频| 久久一区亚洲| 美女尤物国产一区| 绿色成人影院| 国产夜色精品一区二区av| 国产专区综合网| 国产黄色在线看| av免费观看久久| 精品国产一区二区三区久久狼5月| www.男人天堂网| 欧美激情国内自拍| 亚洲一区二区三区成人在线视频精品| 精品无码人妻一区二区免费蜜桃| 国产精品一区二区人人爽| 国产精品美女久久久久久久久久久| 国产成人精品午夜视频免费| 亚洲成人久久网| 日韩少妇视频| 国产精品久久激情| 久久久久久国产精品免费免费| 一区二区三区不卡视频在线观看| 国产一级二级三级| 亚洲国产精品嫩草影院| 成人福利视频导航| 欧美影院一区二区| 国产一区二区免费在线| 永久免费精品视频| 亚洲国产成人精品激情在线| 亚洲激情综合网| 韩国自拍一区| 91影视免费在线观看| 日韩欧美一级二级| 亚洲黄色片网站| 亚洲欧美日韩偷拍| 青青操在线播放| 人人插人人射| 国产一区二区三区在线| 久久久久久久久中文字幕| 精品一区二区三区四| 懂色av.com| 自拍偷拍视频亚洲| 午夜激情在线观看| 你懂的亚洲视频| 北条麻妃在线观看视频| 成人黄色动漫| 亚洲成人av电影在线| 国产高潮在线| 国产精品jk白丝蜜臀av小说| 开心激情五月婷婷| 女教师淫辱の教室蜜臀av软件| 欧美视频在线观看免费网址| www.色偷偷.com| 亚洲精品福利视频| 一本大道香蕉8中文在线视频| 黄色一级视频免费看| 日本一级黄色录像| 午夜精品久久久久久久久久久久| 亚洲精品无码久久久久久久| 久久在线精品视频| 最近2019年中文视频免费在线观看| 精品久久久久一区| 色哟哟一区二区在线观看| 综合 欧美 亚洲日本| 极品销魂美女一区二区三区| 91精品国产色综合久久| 成人自拍视频网| 老司机深夜福利在线观看| 久久久久久影视| 亚洲欧洲国产伦综合| 欧美一级在线视频| 中文永久免费观看| 国产精品亚洲一区二区三区| 免费一区二区在线观看| 精品人妻一区二区三区潮喷在线| 69p69国产精品| 欧美无砖专区一中文字| 欧洲成人在线观看| 中国黄色片视频| 国产美女网站视频| 欧美成人激情视频免费观看| 国产成人福利短视频app| 国产乱码精品一区二区三区五月婷| 日本在线视频不卡| 中文在线a√在线8| 卡通欧美亚洲| 欧美性受xxxx黒人xyx性爽| 日本www在线播放| 在线免费观看黄色小视频| 欧美色偷偷大香| 2019日本中文字幕| 国产www精品| 日韩午夜免费视频| jizzjizzjizz国产| 欧美一级二级三级区| 欧美日韩和欧美的一区二区| 亚洲老板91色精品久久| 99视频+国产日韩欧美| 亚洲妇女成熟| 亚洲色图网站| 强制捆绑调教一区二区| 稀缺呦国内精品呦| 欧美va亚洲va在线观看蝴蝶网| 精品国产精品国产精品| 日韩三级不卡| 国产精品啊v在线| 日韩美女一区| 中文字幕av日韩精品| 久久97人妻无码一区二区三区| 亚洲成人av高清| 国产不卡精品| 精品三级在线看| 亚洲精品合集| 天天综合一区| 妖精视频成人观看www| 欧美在线视频观看| 男人午夜视频在线观看| 99视频精品视频高清免费| 不卡av中文字幕| 成人网站免费观看| 久久久国产精品无码| 在线亚洲一区二区| 国产肥老妇视频| 精品久久久久久一区二区里番| 免费男女羞羞的视频网站中文字幕妖精视频| 国产成人三级在线播放| 国产精品人成在线观看免费| 亚洲一区二区网站| 在线中文av| 在线播放精品| 国产精品亚洲第一区在线暖暖韩国| 亚洲第九十七页| 久久久久久久久99| 成全电影播放在线观看国语| 妺妺窝人体色www婷婷| 日韩一二三四| 黄色污污在线观看| 日韩欧美一区电影| 伊人成综合网| 欧美性资源免费| 182在线视频观看| 91精品国产乱码久久久竹菊| 国产一区二区三区在线观看免费| 亚洲av无码成人精品区| 成人激情av| 青娱乐国产精品| 精品成人一区二区三区免费视频| 私人玩物在线观看| 波多野结衣在线观看一区二区三区| 亚洲午夜网未来影院| 国产精品久久久久久久久粉嫩av| 成人不卡免费av| 视频一区在线视频| 91亚洲国产成人精品一区| 激情文学综合丁香| 91国内产香蕉| 国产 欧美 精品| 粉嫩粉嫩芽的虎白女18在线视频| 成人激情视频| 欧美激情视频给我| 宅男午夜在线| 日韩欧美大尺度| 中文字幕制服丝袜| 九九九热精品免费视频观看网站| 午夜视频免费看| 亚洲大尺度网站| 91av视频在线免费观看| 在线观看av中文| 99久热在线精品996热是什么| 国产一区二区高清| av无码av天天av天天爽| 999久久久精品国产| 国产网站观看9久| 久久手机视频| 韩国成人一区| 日本福利片在线| 亚洲最大福利视频| 视频一区视频二区在线观看| 久久久亚洲欧洲日产国码αv| 成人在线资源网址| 成人有码在线视频| 国产精品 欧美 日韩| 一级黄色片在线| 国产精品一区二区三区www| 天天做天天爱夜夜爽| 中文在线中文资源| 国产精品不卡一区二区三区在线观看| 久久亚洲一区二区| 久久综合九色综合欧美98| 无尽裸体动漫2d在线观看| 国产mv免费观看入口亚洲| www.天天操.com| 欧美日韩一级视频| 欧美一区永久视频免费观看| 国产白丝网站精品污在线入口| 成人3d动漫一区二区三区91| 亚洲第一成年网| av 日韩 人妻 黑人 综合 无码| 亚洲一区二区三区四区av| 国产白丝网站精品污在线入口| 久久国产精品精品国产色婷婷| 性网站在线播放| 中文字幕日日夜夜| 国产福利一区二区三区视频在线| 777电影在线观看| 亚洲精品**中文毛片| 18成人免费观看网站下载| 色18美女社区| 亚洲一区网站| 亚洲精品国产精品乱码在线观看| 超碰在线97免费| 伊人久久成人| ass极品国模人体欣赏| www.欧美日韩| 国产精品丝袜黑色高跟鞋| 亚洲第一福利视频| 橘梨纱av一区二区三区在线观看| 亚洲亚洲精品三区日韩精品在线视频| 最近免费中文字幕中文高清百度| 国产精品v亚洲精品v日韩精品| 777精品久无码人妻蜜桃| 久久天天躁狠狠躁夜夜av| 中文字幕乱码日本亚洲一区二区| 欧美人善zozσ性伦交| 国产黄色片在线| 三年片大全在线观看大全有哪些| 久久久久午夜电影| 粉嫩蜜臀av国产精品网站| 日韩电影在线免费| 国产精品第8页| sis001亚洲原创区| 国产精品自拍在线观看| 日日夜夜综合网| 色av男人的天堂免费在线| 奇米四色…亚洲| 日韩精品高清在线| 日韩精品亚洲元码| 久久国产精品久久国产精品| 久久久久国色av免费看影院| 91麻豆国产语对白在线观看| 亚洲欧洲偷拍精品| 色偷偷综合社区| 一本大道熟女人妻中文字幕在线| 久草在.com| 久久99这里只有精品| 精品国自产拍在线观看| 影音先锋国产| 久久只有这里有精品| 国产精品裸体瑜伽视频| av免费精品一区二区三区| 一区二区三区视频免费视频观看网站| 青青草免费在线视频观看| 激情偷乱视频一区二区三区| 在线免费观看av网址| 最好看的中文字幕| 99国产精品久久久久久久久久| 不卡视频在线播放| 亚洲午夜久久久久久久久| 激情深爱一区二区| 88国产精品欧美一区二区三区| 免费成人深夜夜行视频| 男人网站视频| 4p变态网欧美系列| 这里只有精品6| 日韩成人动漫在线观看| 日韩亚洲欧美成人| 欧美日本一区二区在线观看| 美女100%无挡| 啦啦啦中文高清在线视频| 久久久久久国产精品一区| 日本一区二区在线免费播放| 欧美成人国产va精品日本一级| 日韩激情综合网| 精品欧美国产一区二区三区| 欧美xxxx三人交性视频|