精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

0-1背包問題,你該了解這些!

開發(fā) 前端
有n件物品和一個最多能背重量為w 的背包。第i件物品的重量是weight[i],得到的價值是value[i] 。每件物品只能用一次,求解將哪些物品裝入背包里物品價值總和最大。

關(guān)于01背包問題,你該了解這些!

這周我們正式開始講解背包問題!

但說實話,背包九講對于小白來說確實不太友好,看起來還是有點費勁的,而且都是偽代碼理解起來也吃力。

對于面試的話,其實掌握01背包,和完全背包,就夠用了,最多可以再來一個多重背包。

如果這幾種背包,分不清,我這里畫了一個圖,如下:

分割等和子集1

至于背包九講中其他背包,面試幾乎不會問,都是競賽級別的了,leetcode上連多重背包的題目都沒有,所以題庫也告訴我們,01背包和完全背包就夠用了。

而完全背包又是也是01背包稍作變化而來,即:完全背包的物品數(shù)量是無限的。

所以背包問題的理論基礎(chǔ)重中之重是01背包,一定要理解透!

leetcode上沒有純01背包的問題,都是01背包應(yīng)用方面的題目,也就是需要轉(zhuǎn)化為01背包問題。

所以我先通過純01背包問題,把01背包原理講清楚,后續(xù)再講解leetcode題目的時候,重點就是講解如何轉(zhuǎn)化為01背包問題了。

之前可能有些錄友已經(jīng)可以熟練寫出背包了,但只要把這個文章仔細看完,相信你會意外收獲!

01 背包

有n件物品和一個最多能背重量為w 的背包。第i件物品的重量是weight[i],得到的價值是value[i] 。每件物品只能用一次,求解將哪些物品裝入背包里物品價值總和最大。

動態(tài)規(guī)劃-背包問題

這是標(biāo)準(zhǔn)的背包問題,以至于很多同學(xué)看了這個自然就會想到背包,甚至都不知道暴力的解法應(yīng)該怎么解了。

這樣其實是沒有從底向上去思考,而是習(xí)慣性想到了背包,那么暴力的解法應(yīng)該是怎么樣的呢?

每一件物品其實只有兩個狀態(tài),取或者不取,所以可以使用回溯法搜索出所有的情況,那么時間復(fù)雜度就是,這里的n表示物品數(shù)量。

所以暴力的解法是指數(shù)級別的時間復(fù)雜度。進而才需要動態(tài)規(guī)劃的解法來進行優(yōu)化!

在下面的講解中,我舉一個例子:

背包最大重量為4。

物品為:

  重量 價值
物品0 1 15
物品1 3 20
物品2 4 30

問背包能背的物品最大價值是多少?

以下講解和圖示中出現(xiàn)的數(shù)字都是以這個例子為例。

二維dp數(shù)組01背包

依然動規(guī)五部曲分析一波。

確定dp數(shù)組以及下標(biāo)的含義

對于背包問題,有一種寫法, 是使用二維數(shù)組,即dp[i][j] 表示從下標(biāo)為[0-i]的物品里任意取,放進容量為j的背包,價值總和最大是多少。

只看這個二維數(shù)組的定義,大家一定會有點懵,看下面這個圖:

動態(tài)規(guī)劃-背包問題1

要時刻記著這個dp數(shù)組的含義,下面的一些步驟都圍繞這dp數(shù)組的含義進行的,如果哪里看懵了,就來回顧一下i代表什么,j又代表什么。

確定遞推公式

再回顧一下dp[i][j]的含義:從下標(biāo)為[0-i]的物品里任意取,放進容量為j的背包,價值總和最大是多少。

那么可以有兩個方向推出來dp[i][j],

  • 不放物品i:由dp[i - 1][j]推出,即背包容量為j,里面不放物品i的最大價值,此時dp[i][j]就是dp[i - 1][j]。(其實就是當(dāng)物品i的重量大于背包j的重量時,物品i無法放進背包中,所以被背包內(nèi)的價值依然和前面相同。)
  • 放物品i:由dp[i - 1][j - weight[i]]推出,dp[i - 1][j - weight[i]] 為背包容量為j - weight[i]的時候不放物品i的最大價值,那么dp[i - 1][j - weight[i]] + value[i] (物品i的價值),就是背包放物品i得到的最大價值

所以遞歸公式:dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]);

dp數(shù)組如何初始化

關(guān)于初始化,一定要和dp數(shù)組的定義吻合,否則到遞推公式的時候就會越來越亂。

首先從dp[i][j]的定義出發(fā),如果背包容量j為0的話,即dp[i][0],無論是選取哪些物品,背包價值總和一定為0。如圖:

動態(tài)規(guī)劃-背包問題2

在看其他情況。

狀態(tài)轉(zhuǎn)移方程 dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 可以看出i 是由 i-1 推導(dǎo)出來,那么i為0的時候就一定要初始化。

dp[0][j],即:i為0,存放編號0的物品的時候,各個容量的背包所能存放的最大價值。

那么很明顯當(dāng) j < weight[0]的時候,dp[0][j] 應(yīng)該是 0,因為背包容量比編號0的物品重量還小。

當(dāng)j >= weight[0]時,dp[0][j] 應(yīng)該是value[0],因為背包容量放足夠放編號0物品。

代碼初始化如下:

  1. for (int j = 0 ; j < weight[0]; j++) {  // 當(dāng)然這一步,如果把dp數(shù)組預(yù)先初始化為0了,這一步就可以省略,但很多同學(xué)應(yīng)該沒有想清楚這一點。 
  2.     dp[0][j] = 0; 
  3. // 正序遍歷 
  4. for (int j = weight[0]; j <= bagweight; j++) { 
  5.     dp[0][j] = value[0]; 

此時dp數(shù)組初始化情況如圖所示:

動態(tài)規(guī)劃-背包問題7

dp[0][j] 和 dp[i][0] 都已經(jīng)初始化了,那么其他下標(biāo)應(yīng)該初始化多少呢?

其實從遞歸公式:dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 可以看出dp[i][j] 是由左上方數(shù)值推導(dǎo)出來了,那么 其他下標(biāo)初始為什么數(shù)值都可以,因為都會被覆蓋。

初始-1,初始-2,初始100,都可以!

但只不過一開始就統(tǒng)一把dp數(shù)組統(tǒng)一初始為0,更方便一些。

如圖:

動態(tài)規(guī)劃-背包問題10

最后初始化代碼如下:

  1. // 初始化 dp 
  2. vector<vector<int>> dp(weight.size(), vector<int>(bagweight + 1, 0)); 
  3. for (int j = weight[0]; j <= bagweight; j++) { 
  4.     dp[0][j] = value[0]; 

費了這么大的功夫,才把如何初始化講清楚,相信不少同學(xué)平時初始化dp數(shù)組是憑感覺來的,但有時候感覺是不靠譜的。

確定遍歷順序

在如下圖中,可以看出,有兩個遍歷的維度:物品與背包重量

動態(tài)規(guī)劃-背包問題3

那么問題來了,先遍歷 物品還是先遍歷背包重量呢?

其實都可以!!但是先遍歷物品更好理解。

那么我先給出先遍歷物品,然后遍歷背包重量的代碼。

  1. // weight數(shù)組的大小 就是物品個數(shù) 
  2. for(int i = 1; i < weight.size(); i++) { // 遍歷物品 
  3.     for(int j = 0; j <= bagweight; j++) { // 遍歷背包容量 
  4.         if (j < weight[i]) dp[i][j] = dp[i - 1][j]; 
  5.         else dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 
  6.  
  7.     } 

先遍歷背包,再遍歷物品,也是可以的!(注意我這里使用的二維dp數(shù)組)

例如這樣:

  1. // weight數(shù)組的大小 就是物品個數(shù) 
  2. for(int j = 0; j <= bagweight; j++) { // 遍歷背包容量 
  3.     for(int i = 1; i < weight.size(); i++) { // 遍歷物品 
  4.         if (j < weight[i]) dp[i][j] = dp[i - 1][j]; 
  5.         else dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 
  6.     } 

為什么也是可以的呢?

要理解遞歸的本質(zhì)和遞推的方向。

dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 遞歸公式中可以看出dp[i][j]是靠dp[i-1][j]和dp[i - 1][j - weight[i]]推導(dǎo)出來的。

dp[i-1][j]和dp[i - 1][j - weight[i]] 都在dp[i][j]的左上角方向(包括正上方向),那么先遍歷物品,再遍歷背包的過程如圖所示:

動態(tài)規(guī)劃-背包問題5

再來看看先遍歷背包,再遍歷物品呢,如圖:

動態(tài)規(guī)劃-背包問題6

大家可以看出,雖然兩個for循環(huán)遍歷的次序不同,但是dp[i][j]所需要的數(shù)據(jù)就是左上角,根本不影響dp[i][j]公式的推導(dǎo)!

但先遍歷物品再遍歷背包這個順序更好理解。

其實背包問題里,兩個for循環(huán)的先后循序是非常有講究的,理解遍歷順序其實比理解推導(dǎo)公式難多了。

舉例推導(dǎo)dp數(shù)組

來看一下對應(yīng)的dp數(shù)組的數(shù)值,如圖:

動態(tài)規(guī)劃-背包問題4

最終結(jié)果就是dp[2][4]。

建議大家此時自己在紙上推導(dǎo)一遍,看看dp數(shù)組里每一個數(shù)值是不是這樣的。

做動態(tài)規(guī)劃的題目,最好的過程就是自己在紙上舉一個例子把對應(yīng)的dp數(shù)組的數(shù)值推導(dǎo)一下,然后在動手寫代碼!

很多同學(xué)做dp題目,遇到各種問題,然后憑感覺東改改西改改,怎么改都不對,或者稀里糊涂就改過了。

主要就是自己沒有動手推導(dǎo)一下dp數(shù)組的演變過程,如果推導(dǎo)明白了,代碼寫出來就算有問題,只要把dp數(shù)組打印出來,對比一下和自己推導(dǎo)的有什么差異,很快就可以發(fā)現(xiàn)問題了。

完整c++測試代碼

  1. void test_2_wei_bag_problem1() { 
  2.     vector<int> weight = {1, 3, 4}; 
  3.     vector<int> value = {15, 20, 30}; 
  4.     int bagweight = 4; 
  5.  
  6.     // 二維數(shù)組 
  7.     vector<vector<int>> dp(weight.size(), vector<int>(bagweight + 1, 0)); 
  8.  
  9.     // 初始化 
  10.     for (int j = weight[0]; j <= bagweight; j++) { 
  11.         dp[0][j] = value[0]; 
  12.     } 
  13.  
  14.     // weight數(shù)組的大小 就是物品個數(shù) 
  15.     for(int i = 1; i < weight.size(); i++) { // 遍歷物品 
  16.         for(int j = 0; j <= bagweight; j++) { // 遍歷背包容量 
  17.             if (j < weight[i]) dp[i][j] = dp[i - 1][j]; 
  18.             else dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - weight[i]] + value[i]); 
  19.  
  20.         } 
  21.     } 
  22.  
  23.     cout << dp[weight.size() - 1][bagweight] << endl; 
  24.  
  25. int main() { 
  26.     test_2_wei_bag_problem1(); 

總結(jié)

講了這么多才剛剛把二維dp的01背包講完,這里大家其實可以發(fā)現(xiàn)最簡單的是推導(dǎo)公式了,推導(dǎo)公式估計看一遍就記下來了,但難就難在如何初始化和遍歷順序上。

可能有的同學(xué)并沒有注意到初始化 和 遍歷順序的重要性,我們后面做力扣上背包面試題目的時候,大家就會感受出來了。

本文轉(zhuǎn)載自微信公眾號「代碼隨想錄」,可以通過以下二維碼關(guān)注。轉(zhuǎn)載本文請聯(lián)系代碼隨想錄公眾號。

 

責(zé)任編輯:武曉燕 來源: 代碼隨想錄
相關(guān)推薦

2021-01-19 05:46:45

背包數(shù)組容量

2021-04-13 07:58:38

背包代碼模式

2021-02-09 09:55:24

動態(tài)規(guī)劃

2021-01-04 08:37:53

動態(tài)規(guī)劃DP

2018-10-15 12:42:21

2021-07-13 14:03:24

二叉樹滿二叉樹完全二叉樹

2021-04-27 07:52:18

跳槽數(shù)據(jù)分析

2021-03-29 09:37:17

SpringBoot常用注解Spring Boot

2021-05-18 08:02:40

面試面試問題職業(yè)規(guī)劃

2023-06-26 19:25:18

效率消息中心業(yè)務(wù)線

2020-10-29 10:26:28

DevOps軟件自動化

2020-04-03 18:43:21

大數(shù)據(jù)Hadoop數(shù)據(jù)

2021-05-11 07:39:58

跳槽談薪工作

2017-06-14 15:07:58

機房管理服務(wù)器

2022-12-23 08:03:45

西瓜業(yè)務(wù)SEO前端

2023-12-07 08:13:58

Java開發(fā)

2021-01-07 05:40:13

BLE模塊Android

2017-01-09 16:40:07

React NatiAndroid 開發(fā)

2010-08-27 15:24:39

機房監(jiān)控

2011-05-10 10:56:29

DBA面試
點贊
收藏

51CTO技術(shù)棧公眾號

男人的天堂在线视频| 日韩影视一区二区三区| 制服丝袜在线播放| 不卡的av电影在线观看| 欧美综合一区第一页| 国产精品无码一区二区三区免费| 综合在线影院| 亚洲丝袜精品丝袜在线| 国产99视频精品免费视频36| 精品国产午夜福利| 久久久久亚洲| 亚洲国产一区二区三区在线观看| 久久久久久三级| 性xxxfreexxxx性欧美| 久久久一区二区三区捆绑**| 91传媒视频免费| 亚洲天堂男人av| 国产精品99一区二区| 国产亚洲精品va在线观看| 三上悠亚 电影| 日本.亚洲电影| 亚洲午夜久久久久久久久电影网| 日本一区二区三区四区在线观看| 精品国产av一区二区| 日韩精品亚洲一区二区三区免费| 欧美国产日韩免费| 欧美xxxooo| 国产一区二区三区四区五区传媒| 精品国产精品一区二区夜夜嗨| 久久撸在线视频| 亚洲精品**中文毛片| 亚洲国产一区在线观看| 免费国产成人看片在线| 成人免费在线电影| 91网站最新网址| 国产成人精品自拍| 国产精品久久免费| 美女网站一区二区| 青青a在线精品免费观看| 国产一级特黄a高潮片| 欧美1级片网站| 中文字幕无线精品亚洲乱码一区 | 精品制服美女久久| 日本欧美一二三区| 久久国产视频精品| 亚洲一区二区三区四区五区午夜 | 中文字幕黄色大片| 91社区在线观看播放| 久久久午夜电影| 欧美国产一二三区| 欧美日本网站| 久久午夜老司机| 免费试看一区| 韩国精品视频| 国产丝袜在线精品| 日韩av不卡播放| 国产资源在线看| 久久九九99视频| 视频一区亚洲| 在线观看麻豆| 亚洲色图都市小说| 最新av网址在线观看| 羞羞电影在线观看www| 亚洲综合成人在线| 黄色激情在线视频| 漫画在线观看av| 色婷婷亚洲精品| 乌克兰美女av| 国产电影一区二区| 精品少妇一区二区| 国产精品无码永久免费不卡| 美女毛片一区二区三区四区| 亚洲欧洲偷拍精品| 永久免费观看片现看| 久久精品欧美一区| 久久久久久久久久久免费精品| 日韩少妇裸体做爰视频| 销魂美女一区二区三区视频在线| 日本韩国欧美精品大片卡二| 中文字幕av在线免费观看| 国内久久精品视频| 国产精品免费视频一区二区| 四虎影视精品成人| 中文字幕欧美国产| 91精品国产毛片武则天| 免费一二一二在线视频| 欧美性高清videossexo| 欧美成人手机在线视频| 第一区第二区在线| 在线播放亚洲激情| 粉嫩av性色av蜜臀av网站| av不卡免费看| 国产专区精品视频| 婷婷五月综合激情| 国产精品网站在线播放| 欧美亚洲色图视频| 国产私拍福利精品视频二区| 欧美一区二区福利在线| 不卡一区二区在线观看| 91久久久精品国产| 青青在线视频一区二区三区| 国产又爽又黄免费软件| 久久综合中文字幕| 日本天堂免费a| 亚洲wwww| 精品88久久久久88久久久| 国产18无套直看片| 亚洲久久一区| 91性高湖久久久久久久久_久久99| 日批视频在线播放| 亚洲人成精品久久久久| 成人羞羞国产免费网站| 日韩免费高清视频网站| 中文字幕精品久久久久| www..com国产| 国产精品亚洲专一区二区三区| 欧美日韩精品久久| 超碰在线最新网址| 欧美日韩精品欧美日韩精品一| 熟妇人妻久久中文字幕| 女人天堂亚洲aⅴ在线观看| 国产va免费精品高清在线| 亚洲精品一区二区三区四区| 国产精品美女久久久久久久久| 日韩在线视频在线观看| 中文字幕亚洲在线观看| 久久精品国产视频| 欧美另类高清videos的特点| 91麻豆swag| 免费一级淫片aaa片毛片a级| 精品中文字幕一区二区三区四区| 亚洲网站在线播放| 日韩欧美成人一区二区三区| 成人免费高清在线观看| 国内外成人激情免费视频| 伦一区二区三区中文字幕v亚洲| 日韩av中文字幕在线| 久久久久成人网站| 国产成人综合在线观看| 97精品国产97久久久久久粉红| av成人在线观看| 国产一区二区三区日韩欧美| 天堂网中文字幕| 久久一夜天堂av一区二区三区| 欧美一级欧美一级| 国产成人一二片| 久久久噜噜噜久久中文字免| 精品人妻无码一区二区三区蜜桃一| 国产精品高潮久久久久无| 国产aaaaa毛片| 成人黄色av| 国产在线观看91精品一区| 色的视频在线免费看| 欧美日韩精品高清| 五月天色婷婷丁香| 国产九色精品成人porny| 男人j进女人j| 波多野结衣欧美| 欧美激情手机在线视频| 欧美 日韩 国产 在线| 午夜欧美一区二区三区在线播放| 亚洲精品久久一区二区三区777 | 久久久久久久一| 亚洲精品一区二区三区四区| 污片在线观看一区二区| 中文字幕xxx| 全部av―极品视觉盛宴亚洲| 尤物国产精品| 欧美经典一区| 97在线视频免费播放| 日韩精品福利| 欧美日韩一区久久| 欧美人禽zoz0强交| 9色porny自拍视频一区二区| 已婚少妇美妙人妻系列| 99久久婷婷国产综合精品电影√| 亚洲一区二区三区777| 国内高清免费在线视频| 日韩高清欧美高清| 在线观看一二三区| 夜夜精品视频一区二区| 男生裸体视频网站| 久久超碰97人人做人人爱| 成人国产一区二区三区| 首页亚洲中字| 成人av.网址在线网站| 欧美xxxx黑人又粗又长| 草草视频在线播放| 一本到不卡免费一区二区| 97在线观看视频免费| 成人精品在线视频观看| 天堂在线资源视频| 亚洲高清电影| 亚洲欧美影院| 久久悠悠精品综合网| 国产精品视频白浆免费视频| 伦理av在线| 一色桃子一区二区| 欧美视频一二区| 欧美欧美欧美欧美| 免费看日批视频| 亚洲欧美一区二区久久| 波多野结衣办公室33分钟| 极品美女销魂一区二区三区| 欧美日韩亚洲一| 欧美~级网站不卡| 日韩欧美手机在线| 久久动漫网址| 92福利视频午夜1000合集在线观看| 中文字幕 在线观看| 久久99热精品这里久久精品| www在线播放| 日韩精品一区二区视频| av网站免费播放| 欧美三级电影在线观看| 久久国产黄色片| 亚洲国产精品久久久久婷婷884| 极品尤物一区二区| 久久综合久色欧美综合狠狠| av在线天堂网| 国产在线精品国自产拍免费| 久草综合在线观看| 亚洲在线播放| 国产免费黄色小视频| 欧美日本三区| 三上悠亚免费在线观看| 色琪琪久久se色| 日本一区二区三区四区在线观看| 亚洲伊人春色| 狠狠综合久久av| 国产精品99久久免费观看| 91大片在线观看| 欧美日韩黄色| 成人免费网站在线| japansex久久高清精品| 国产一区二区在线免费| 欧美日韩尤物久久| 国产激情综合五月久久| 成人性生活视频| 欧美综合国产精品久久丁香| 一区二区电影免费观看| 2021国产精品视频| 国产精品xx| 91爱爱小视频k| 久草在线中文最新视频| 2019av中文字幕| 在线能看的av网址| 欧美在线一区二区视频| xx欧美视频| 国产成人在线视频| 亚洲爱爱视频| 国产精品va在线播放| 成人福利视频| 国产成人亚洲精品| 日韩欧美精品一区二区综合视频| 国产精品久久电影观看| 日韩av黄色| 91青青草免费在线看| 色妞ww精品视频7777| 国产精品日韩一区二区三区| 99久久婷婷国产综合精品青牛牛| 国产伦精品一区二区三区视频免费 | 日韩综合网站| 玖玖精品在线视频| 激情综合视频| 99热成人精品热久久66| 日韩成人精品视频| 亚洲自拍第三页| 成人美女在线观看| 国产精品20p| 自拍偷拍国产精品| 国产无遮挡又黄又爽在线观看| 都市激情亚洲色图| 这里只有精品免费视频| 制服丝袜在线91| 老牛影视av牛牛影视av| 亚洲欧美国产精品va在线观看| 国产三级电影在线| 成人97在线观看视频| 国产美女高潮在线| 国产精品一区二区久久久久| 欧美久久一区二区三区| 久久一区二区精品| 欧美gay男男猛男无套| 亚洲色欲久久久综合网东京热| 欧美亚洲免费| 三级av免费看| 久久久久9999亚洲精品| 三级av在线免费观看| 午夜伊人狠狠久久| 一级黄色大毛片| 日韩av网址在线| huan性巨大欧美| 青青青国产精品一区二区| 欧美成人精品午夜一区二区| 美脚丝袜一区二区三区在线观看| 91精品观看| 情侣黄网站免费看| 国产成人av电影在线| 中文字幕av久久爽一区| 亚洲综合一二三区| 在线不卡免费视频| 日韩国产激情在线| 黄色在线免费| 国产www精品| 国产三级精品三级在线观看国产| 一本色道久久综合亚洲精品婷婷| 最新成人av网站| 亚洲第一成肉网| 国产日产欧产精品推荐色| 国产一级特黄毛片| 日韩一区二区三区精品视频| 国产一区二区三区福利| 97碰碰碰免费色视频| 精品一区二区三区在线观看视频 | 影视亚洲一区二区三区| 天天摸天天碰天天添| 丁香天五香天堂综合| 日韩国产第一页| 欧美午夜在线观看| 欧美孕妇孕交xxⅹ孕妇交| 久久久久国色av免费观看性色 | 一级黄色毛毛片| 欧美色另类天堂2015| 懂色av一区二区三区四区| 日韩中文字幕国产精品| 成人免费av电影| 久久涩涩网站| 精品动漫3d一区二区三区免费版| 亚洲免费在线播放视频| 中文字幕av资源一区| 337p粉嫩色噜噜噜大肥臀| 精品亚洲夜色av98在线观看| 97人人爽人人澡人人精品| 99视频在线| 欧美精品自拍| 美女被艹视频网站| 亚洲人午夜精品天堂一二香蕉| 亚洲无码精品在线播放| 中文字幕在线观看亚洲| 91国内外精品自在线播放| 午夜欧美一区二区三区免费观看| 老牛国产精品一区的观看方式| 日韩一级视频在线观看| 欧美日韩精品二区| 欧美日韩免费做爰大片| 日本亚洲欧洲色| 视频精品在线观看| 九热视频在线观看| 亚洲国产精品成人综合色在线婷婷| www.久久网| 色天天综合狠狠色| 成人噜噜噜噜| 中国女人做爰视频| 成人午夜碰碰视频| 日韩高清免费av| 亚洲欧美成人精品| yy6080久久伦理一区二区| 一区二区免费电影| 国内一区二区在线| 精品在线免费观看视频| 欧美精品一区二区三区高清aⅴ| 精精国产xxx在线视频app| 快播日韩欧美| 日韩黄色在线观看| 亚洲女人毛茸茸高潮| 日韩欧美的一区二区| av蜜臀在线| 欧美日韩在线播放一区二区| 日韩av中文在线观看| 在线观看美女av| 亚洲国产97在线精品一区| 欧美男体视频| 在线观看一区二区三区三州| 国产精品一区二区三区四区| 日韩乱码在线观看| 一二美女精品欧洲| 精品午夜av| 91免费视频网站在线观看| 欧美激情在线一区二区| 国内精品国产成人国产三级| 97热精品视频官网| 久久中文字幕av一区二区不卡| 久久久久中文字幕亚洲精品 | 日本一区二区不卡视频| 国产黄色美女视频| 欧美亚洲成人精品| 久久综合电影| 中国av免费看| 欧美日韩一区 二区 三区 久久精品| 久久精品视频免费看| 国产一区二区精品在线| 日韩高清在线一区| 久久97人妻无码一区二区三区| 亚洲美女av黄| 精品一级视频| 午夜dv内射一区二区| 一区二区三区av电影 | 久久视频免费观看| 日韩动漫一区|