亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

從拼數(shù)題到六大算法專題:字符串、貪心、逆向、BST、鏈表與圖形打印

從拼數(shù)題到六大算法專題:字符串、貪心、逆向、BST、鏈表與圖形打印 前兩天刷題碰到一道字符串處理的經(jīng)典題——拼數(shù)number。題面包裝得很像課堂作業(yè)小 r 正在學(xué)習(xí)字符串處理小 x 給了小 r 一個(gè)字符串 s里面是一串由空格隔開的數(shù)字要求把它們?nèi)科唇映梢粋€(gè)整數(shù)并且拼出來的數(shù)要盡量大。我一開始覺得這就是排序題把數(shù)字從大到小排一遍就完了結(jié)果樣例就把我的想法打回去了。仔細(xì)想了一圈才發(fā)現(xiàn)這道題把字符串處理、貪心思想和逆向思維全擰在了一塊兒順手還牽扯出排序?qū)懛ɡ锏脑S多坑。也因?yàn)檫@道題我把最近刷題清單里的六個(gè)高頻專題——字符串處理、貪心思想、逆向思維、二叉排序樹、鏈表模式匹配、圖形打印——重新整理了一遍寫成這篇手記。想沖擊機(jī)試、面試手撕算法或者刷題剛起步的朋友都可以參考一下。1. 字符串處理很多算法題的入場(chǎng)券1.1 拼數(shù)這題考的不只是“排序”先把題意說清楚。給定 n 個(gè)非負(fù)整數(shù)比如3、30、34、5、9目標(biāo)是把它們按某種順序首尾相接得到一個(gè)盡可能大的整數(shù)。題目描述里為什么會(huì)涉及字符串 s因?yàn)槠唇雍蟮慕Y(jié)果位數(shù)可能上百位早就不在一個(gè)int或long long能裝下的范圍內(nèi)所以這道題天然就是用字符串來做的。你拿到的一開始就是字符串或者你得先把數(shù)字轉(zhuǎn)成字符串再處理拼接和比較。我最初的錯(cuò)誤做法非常典型按每個(gè)數(shù)的數(shù)值從大到小排序。用3、30一試就露餡——數(shù)值上 3 比 30 小如果讓 30 排在前面得到303讓 3 排在前面得到330明顯330 303。也就是說3雖然數(shù)值小卻必須先放。再看34、3、30這一組按數(shù)值降序是34、30、3拼出來34303可實(shí)際上34、3、30能拼成34330后者更大。這說明“盡量把數(shù)值大的放前面”這個(gè)直覺完全不靠譜。正確的比較方式也來自很樸素的嘗試兩個(gè)數(shù)字 x、y 誰在前直接比較 x 拼在 y 前面和 y 拼在 x 前面誰更大就行。如果x y y x那 x 應(yīng)該在前否則 y 在前。把這種兩兩比較抽象成自定義排序規(guī)則對(duì)整個(gè)數(shù)組排一次序最后得到的拼接結(jié)果就是答案。這里有兩個(gè)隱秘的坑第一x y不能用整數(shù)相加否則一旦超過類型范圍就會(huì)溢出必須保留字符串拼接形式第二排序比較器必須滿足嚴(yán)格弱序用而不是否則標(biāo)準(zhǔn)庫排序的行為是未定義的。很多初學(xué)的朋友在這里寫掛不是思路想錯(cuò)而是對(duì)字符串作為“比較載體”這件事不夠重視。1.2 字符串處理最容易翻車的幾個(gè)細(xì)節(jié)第一個(gè)細(xì)節(jié)是拼接方向。比較a b和b a時(shí)兩邊都得真的拼出來再比不要只拼一邊或者想當(dāng)然地認(rèn)為“字典序大的在前”。字符串的字典序和數(shù)值序并不等價(jià)比如9的字典序大于10但數(shù)值上 9 小于 10。所以拼數(shù)這類場(chǎng)景里唯一可靠的基準(zhǔn)就是完整拼接后的字符串。第二個(gè)細(xì)節(jié)是 C 比較器的寫法。我見過不少人把函數(shù)簽名寫成bool cmp(string a, string b)雖然也能跑但每次排序調(diào)用都會(huì)發(fā)生兩次字符串拷貝數(shù)據(jù)量一大性能立刻變差。正確姿勢(shì)是傳const string如下#include bits/stdc.h using namespace std; bool cmp(const string a, const string b) { return a b b a; } int main() { int n; cin n; vectorstring v(n); for (int i 0; i n; i) cin v[i]; sort(v.begin(), v.end(), cmp); if (v[0] 0) { cout 0 endl; return 0; } for (const string s : v) cout s; cout endl; return 0; }注意最后這個(gè)v[0] 0的判斷。如果排序后第一項(xiàng)還是0說明輸入的所有數(shù)字都是 0此時(shí)正確輸出應(yīng)該是單個(gè)0。如果不做這個(gè)特判你會(huì)拼出一長串000...0樣例可能看不出來大數(shù)據(jù)直接判錯(cuò)。第三個(gè)細(xì)節(jié)是語言層面的字符串拼接成本。Python 里字符串是不可變對(duì)象循環(huán)里反復(fù)執(zhí)行ans s會(huì)產(chǎn)生大量臨時(shí)對(duì)象復(fù)雜度變得很難看。正確做法是先把所有片段放進(jìn)列表最后統(tǒng)一用.join(list)。C 的vectorstring再拼接也要注意性能好在題目通常不會(huì)卡到這一步但養(yǎng)成好習(xí)慣不吃虧。2. 貪心思想不只是“每步選最大”2.1 怎么判斷一道題能不能貪貪心思想的定義誰都會(huì)背每一步都做當(dāng)前看起來最好的選擇希望最終結(jié)果全局最優(yōu)。但真正做題時(shí)很多人栽在“看起來能貪其實(shí)不能貪”的題上。我的經(jīng)驗(yàn)是看到一道題先用三件事去試能不能把決策分解成一系列獨(dú)立的“誰先誰后”選擇有沒有一個(gè)清晰的可比較優(yōu)先級(jí)交換任意兩個(gè)相鄰決策會(huì)不會(huì)影響其它部分的結(jié)果。如果一個(gè)選完就影響后續(xù)所有選擇那多半不是簡單貪心能解決的可能得上動(dòng)態(tài)規(guī)劃。拼數(shù)為什么能貪因?yàn)樗鼭M足一個(gè)很關(guān)鍵的性質(zhì)任意兩個(gè)數(shù)字的相對(duì)順序只影響這兩個(gè)數(shù)字拼接出來的那一段結(jié)果不影響它們前后其它數(shù)字的內(nèi)部順序。換句話說當(dāng)你把3放在30前面更好時(shí)這個(gè)“好”是穩(wěn)定的不會(huì)因?yàn)榕赃叢辶艘粋€(gè)34而改變。這也解釋了為什么最后能用一個(gè)全局排序搞定而不是做動(dòng)態(tài)規(guī)劃。這里必須強(qiáng)調(diào)貪心不是“憑感覺選最優(yōu)”而是“先證明局部最優(yōu)能被安全傳遞”。常見的證明手段有交換論證、反證法、數(shù)學(xué)歸納法。拿零錢兌換舉例在人民幣面值體系下用盡量少張數(shù)的策略確實(shí)可以貪但如果自定義一套奇怪面值貪心會(huì)失敗。做題時(shí)不能因?yàn)轭}目長得像貪心就硬去貪先找反例找不到再用找到反例立刻換思路。2.2 交換論證與拼數(shù)排序規(guī)則交換論證是貪心題最常用也最像“數(shù)學(xué)題”的一種證明方式。對(duì)拼數(shù)來說假設(shè)最優(yōu)排列中存在相鄰兩項(xiàng) x、y且按我們的規(guī)則應(yīng)該讓 x 在前但實(shí)際排列是 y 在前也就是x y y x但 y 被放在了 x 前面。把 x 和 y 交換觀察整個(gè)拼接結(jié)果的變化x、y 前面的部分和后面的部分都沒有變只有中間這一段從y x變成x y。因?yàn)檎當(dāng)?shù)的大小由“前綴 中間 后綴”決定前后綴沒動(dòng)中間值變大了整體自然變大。這就和“最優(yōu)排列”矛盾了。所以最優(yōu)排列里任何相鄰兩項(xiàng)都必須滿足x y y x。接下來再補(bǔ)一個(gè)傳遞性的問題。自定義比較器要在std::sort里安全使用必須滿足傳遞性也就是說如果a應(yīng)該排在b前b應(yīng)該排在c前那么a一定應(yīng)該排在c前。這個(gè)性質(zhì)可以從字符串拼接的角度嚴(yán)格推出來大體思路是把數(shù)字看成帶位權(quán)的字符串形式比較ab和ba本質(zhì)上是在比較某個(gè)加權(quán)字典序。競(jìng)賽中你不需要每次手推但面試時(shí)如果被追問能說出“交換論證 比較關(guān)系可傳遞”這兩點(diǎn)就夠了。代碼上還有一個(gè)容易被忽略的點(diǎn)比較器寫作a b b a相等時(shí)返回false這才是嚴(yán)格弱序。如果寫成程序可能在某些編譯器上陷入未定義行為排序結(jié)果甚至可能打亂我第一次寫拼數(shù)時(shí)就被這種細(xì)節(jié)坑過。3. 逆向思維正面走不通就反著來3.1 逆向思維在算法題里長什么樣逆向思維不是一種具體的數(shù)據(jù)結(jié)構(gòu)而是一種視角切換。我總結(jié)了幾種常見的“反面”形態(tài)從結(jié)果反推原因、從最終狀態(tài)倒推初始狀態(tài)、從問題補(bǔ)集入手、從結(jié)尾往前處理。拼數(shù)里的逆向體現(xiàn)在一個(gè)很小的點(diǎn)上——不要問“哪個(gè)數(shù)字大”而要問“兩個(gè)數(shù)字誰拼在前面更好”。這個(gè)問題一反過來整道題的解法就從“數(shù)值排序”跳到了“拼接比較”。另一個(gè)很常見的逆向形態(tài)是“正難則反”。比如一個(gè)圖不斷刪點(diǎn)問每次刪完還剩多少個(gè)連通塊。正著做每次都要重新計(jì)算很麻煩。如果先把所有要?jiǎng)h的點(diǎn)全部刪掉得到最終圖然后倒著把點(diǎn)一個(gè)一個(gè)加回去用并查集維護(hù)連通塊每個(gè)點(diǎn)的加入只需要處理幾條鄰邊復(fù)雜度直線下降。這種“最終狀態(tài)倒推”在網(wǎng)上被叫“離線逆向并查集”原理并不復(fù)雜但沒見過的人第一次很難想到。還有一類是“從右往左想”。很多單鏈表、后綴類的問題正著掃描時(shí)要記錄各種信息一旦從右往左掃描信息的傳遞立刻變得自然。最典型的是“找出右邊第一個(gè)比自己小的元素”正著做用暴力是 O(n2)反著用單調(diào)棧每個(gè)元素進(jìn)棧出棧一次整體 O(n)。我第一次學(xué)單調(diào)棧時(shí)最大的感慨就是原來有些事?lián)Q一個(gè)方向會(huì)這么順。3.2 三個(gè)值得收藏的逆向處理場(chǎng)景第一個(gè)場(chǎng)景是刪除轉(zhuǎn)添加。前面說的并查集逆向就是這個(gè)套路適用于“不斷刪除”的題目。拿到題先別急著模擬刪除花兩分鐘想想如果反過來按時(shí)間倒序處理所有刪除操作就變成了插入操作而插入恰好是并查集最擅長的。第二個(gè)場(chǎng)景是刪數(shù)問題的“保留視角”。題目是這樣的給定一個(gè)數(shù)字串刪掉 k 個(gè)數(shù)字使剩下的數(shù)字組成的數(shù)最小數(shù)字相對(duì)順序不能變。正向想“刪哪 k 個(gè)”會(huì)非常亂但換一個(gè)說法——從原串里保留 len-k 個(gè)數(shù)字——思路就順了。維護(hù)一個(gè)棧從左到右掃描如果當(dāng)前數(shù)字比棧頂小說明棧頂這個(gè)“更大的數(shù)字”留著不如刪掉于是彈出棧頂。整個(gè)過程始終在決定“保留誰”而不是“刪掉誰”。string removeKdigits(string num, int k) { string stk; for (char c : num) { while (k 0 !stk.empty() stk.back() c) { stk.pop_back(); k--; } stk.push_back(c); } while (k--) stk.pop_back(); int pos 0; while (pos stk.size() stk[pos] 0) pos; return pos stk.size() ? 0 : stk.substr(pos); }第三個(gè)場(chǎng)景是拼數(shù)里的“想要最大就反向比較”。拼最大數(shù)用a b b a拼最小數(shù)就把規(guī)則反轉(zhuǎn)成a b b a。很多題把最大換成最小就讓人懵了其實(shí)就是比較符號(hào)一個(gè)反轉(zhuǎn)的事。這正好體現(xiàn)逆向思維的實(shí)用價(jià)值一旦你理解了正向規(guī)則的本質(zhì)反向規(guī)則根本不需要重新想。4. 二叉排序樹把動(dòng)態(tài)有序性握在手里4.1 BST 的核心性質(zhì)與三個(gè)基礎(chǔ)操作二叉排序樹Binary Search TreeBST的定義看起來很短對(duì)于任意節(jié)點(diǎn)左子樹所有節(jié)點(diǎn)的值小于當(dāng)前節(jié)點(diǎn)右子樹所有節(jié)點(diǎn)的值大于當(dāng)前節(jié)點(diǎn)。由這個(gè)性質(zhì)可以推出一個(gè)重要結(jié)論中序遍歷 BST 得到的結(jié)果一定是有序的。這意味著 BST 天生就是為“動(dòng)態(tài)維護(hù)一組有序數(shù)據(jù)”設(shè)計(jì)的插入、刪除、查找都只跟樹的高度有關(guān)。三個(gè)基礎(chǔ)操作必須滾瓜爛熟。插入從根開始比當(dāng)前節(jié)點(diǎn)小就向左大就向右走到空位置就掛上新節(jié)點(diǎn)。查找同樣是從根開始每走一步就可以排除整棵子樹。刪除稍麻煩分三種情況沒有孩子直接刪只有一個(gè)孩子把孩子提上來有兩個(gè)孩子一般用右子樹的最小節(jié)點(diǎn)或左子樹的最大節(jié)點(diǎn)替代被刪節(jié)點(diǎn)再刪掉那個(gè)替身。我自己經(jīng)常用的插入代碼長這樣struct Node { int val; Node *left, *right; Node(int v) : val(v), left(nullptr), right(nullptr) {} }; Node* insert(Node* root, int val) { if (!root) return new Node(val); if (val root-val) root-left insert(root-left, val); else root-right insert(root-right, val); return root; }注意這里else部分包含了“等于”的情況我默認(rèn)重復(fù)值插入右子樹。不同題目對(duì)重復(fù)值的處理要求不同有的要求去重有的要求計(jì)數(shù)寫之前一定要看清題。如果要求嚴(yán)格不重復(fù)插入前先查找一次如果允許重復(fù)就要明確所有相等值都去同一側(cè)否則樹的中序遍歷會(huì)丟數(shù)據(jù)。4.2 手寫 BST 的幾個(gè)關(guān)鍵坑第一個(gè)坑是退化。BST 的復(fù)雜度是期望 O(log n)但這個(gè)結(jié)論建立在插入序列足夠隨機(jī)的前提下。如果數(shù)據(jù)恰好有序輸入比如1、2、3、4、5依次插入樹會(huì)退化成一棵單鏈查找和插入全部變成 O(n)。很多題的數(shù)據(jù)就是喜歡給你這種“有序”序列專門卡不寫平衡樹的人。所以在競(jìng)賽里能直接用std::set、std::map就用它們內(nèi)部是紅黑樹自動(dòng)保證平衡如果需要手寫也要意識(shí)到數(shù)據(jù)結(jié)構(gòu)本身并沒有承諾最壞情況復(fù)雜度。第二個(gè)坑是刪除操作的實(shí)現(xiàn)細(xì)節(jié)。刪除有兩個(gè)孩子的節(jié)點(diǎn)時(shí)如果你選擇用右子樹最小節(jié)點(diǎn)替代必須先找到這個(gè)“最小節(jié)點(diǎn)”再遞歸刪除它。因?yàn)樽钚」?jié)點(diǎn)位于右子樹的左下角它最多只有一個(gè)右孩子刪除邏輯會(huì)簡單很多。手寫時(shí)最容易出錯(cuò)的地方是遞歸返回值沒有接收導(dǎo)致刪除后父節(jié)點(diǎn)指針還指向原來的節(jié)點(diǎn)樹直接斷掉。建議寫完用一組包含各種形態(tài)的數(shù)據(jù)反復(fù)測(cè)試刪根、刪葉子、刪只有一個(gè)孩子的節(jié)點(diǎn)、刪有兩個(gè)孩子的節(jié)點(diǎn)。第三個(gè)坑是和字符串處理的結(jié)合。BST 的節(jié)點(diǎn)值不一定非是整數(shù)也可以是字符串。比如給你一批單詞要求去重并按字典序輸出最直觀的做法就是建一棵字符串 BST中序遍歷就是字典序。C 里直接用string的operator就能比較比手寫strcmp省心不少。這種場(chǎng)景能幫你把“有序性”這個(gè)抽象概念從數(shù)字?jǐn)U展到文本遇到“動(dòng)態(tài)維護(hù)字典序集合”的題會(huì)更有感覺。5. 鏈表模式匹配沒有隨機(jī)訪問的匹配戰(zhàn)5.1 鏈表匹配為什么不能直接套 KMP在數(shù)組里判斷一個(gè)串是否是另一個(gè)串的子串經(jīng)典算法是 KMP復(fù)雜度做到 O(n m)。它能高效的根本原因有兩個(gè)數(shù)組支持隨機(jī)訪問失配時(shí)可以直接跳回某個(gè)位置繼續(xù)比較數(shù)組長度固定所有回溯操作都在常數(shù)時(shí)間內(nèi)完成。鏈表不一樣單鏈表只能沿著next指針往前走不能后退也沒有下標(biāo)索引。你想讓模式串回退到某個(gè)位置除非額外存下沿途所有節(jié)點(diǎn)否則做不到。所以鏈表上的模式匹配最常見——也最容易被接受——的方案是暴力雙指針。外面用一個(gè)指針遍歷主鏈表每到一個(gè)節(jié)點(diǎn)就把它當(dāng)成匹配起點(diǎn)內(nèi)層再用一個(gè)指針按模式鏈表往后走。如果匹配成功就返回 true失敗就把外層指針往前挪一格再重新開始。最壞情況是主鏈每個(gè)位置都比較到模式末尾才發(fā)現(xiàn)失敗復(fù)雜度 O(n × m)。對(duì)于鏈表這種結(jié)構(gòu)這個(gè)復(fù)雜度很多時(shí)候是能接受的因?yàn)轭}目給的數(shù)據(jù)規(guī)模通常不會(huì)太大。另一個(gè)常見思路是“轉(zhuǎn)數(shù)組再匹配”。先遍歷一遍主鏈表把節(jié)點(diǎn)值存進(jìn)一個(gè) vector再把模式鏈表也存進(jìn)去然后直接套字符串匹配或std::search。思路簡單、不容易出錯(cuò)代價(jià)是額外 O(n) 空間。還有一種更進(jìn)階的思路是哈希把模式鏈的每個(gè)節(jié)點(diǎn)值滾成哈希值再在主鏈上滑動(dòng)窗口比對(duì)能把復(fù)雜度降到近似 O(n m)但哈希沖突、取模、長度對(duì)齊這些細(xì)節(jié)足夠讓你寫半個(gè)小時(shí)筆試時(shí)間緊張時(shí)性價(jià)比不高。5.2 三種實(shí)戰(zhàn)思路與一個(gè)常被忽略的坑先給一個(gè)最干脆的暴力模板struct Node { int val; Node* next; }; bool matchList(Node* head, Node* pattern) { if (!pattern) return true; if (!head) return false; Node* cur head; while (cur) { Node* a cur; Node* b pattern; while (a b a-val b-val) { a a-next; b b-next; } if (!b) return true; cur cur-next; } return false; }這個(gè)函數(shù)的時(shí)間復(fù)雜度要看主鏈?zhǔn)S嚅L度和模式長度的乘積。有一個(gè)很容易被忽略的優(yōu)化先掃一遍兩條鏈的長度如果主鏈?zhǔn)S喙?jié)點(diǎn)數(shù)少于模式鏈長度直接不用比了或者先數(shù)出模式鏈總長在主鏈上只走到n - m的位置。這樣能擋掉一大批無意義的比較。接下來是轉(zhuǎn)數(shù)組方案。把主鏈和模式鏈都轉(zhuǎn)成vectorint然后比較所有長度相等的子數(shù)組。這么做有個(gè)好處你可以在轉(zhuǎn)數(shù)組的過程中順手做“翻轉(zhuǎn)鏈表的回文判斷”之類的事但要注意如果匹配要求的是節(jié)點(diǎn)對(duì)象地址相同而不是值相同轉(zhuǎn)數(shù)組就幫不上忙因?yàn)閿?shù)組比較的是值。最后一個(gè)必須提的坑是環(huán)。如果主鏈表內(nèi)部有環(huán)暴力雙指針會(huì)進(jìn)入死循環(huán)——外層指針沿著環(huán)永遠(yuǎn)走不完。所以在做任何鏈表匹配之前先判斷有沒有環(huán)用快慢指針如果有環(huán)先處理環(huán)的問題再談模式匹配。我第一次在做鏈表題時(shí)忽略了這個(gè)調(diào)試了一個(gè)小時(shí)才發(fā)現(xiàn)根本不是匹配邏輯的問題而是數(shù)據(jù)里藏了一個(gè)環(huán)。這個(gè)教訓(xùn)告訴我鏈表類題目開場(chǎng)第一句一定是問自己這里會(huì)不會(huì)有環(huán)6. 圖形打印老題新看輸出類問題的一招鮮6.1 圖形打印的本質(zhì)是坐標(biāo)映射圖形打印類題目常出現(xiàn)在筆試和機(jī)試的入門部分比如輸出菱形、回形矩陣、三角形、楊輝三角。很多人一看到這種題就開始逐行cout 一個(gè)個(gè)空格去湊結(jié)果把自己繞暈。我的經(jīng)驗(yàn)是先把圖形看成一個(gè)二維字符矩陣然后逐行逐列遍歷所有坐標(biāo)判斷“這個(gè)坐標(biāo)該放什么字符”。判斷條件通??梢员豢偨Y(jié)成數(shù)學(xué)關(guān)系式而不是老老實(shí)實(shí)模擬畫圖的過程。舉一個(gè)最經(jīng)典的菱形例子。假設(shè)要輸出一個(gè)由星號(hào)組成的菱形總行數(shù)為奇數(shù)比如 5 行。把圖形放在一個(gè) 5×5 的坐標(biāo)棋盤上中心點(diǎn)坐標(biāo)為(r0, c0)。一個(gè)位置(r, c)屬于菱形當(dāng)且僅當(dāng)它到中心的曼哈頓距離小于等于某個(gè)半徑。所謂曼哈頓距離就是abs(r - r0) abs(c - c0)。你根本不需要關(guān)心每一行有幾個(gè)空格只需要在雙重循環(huán)里用這個(gè)條件判斷即可。void printDiamond(int n) { int c n / 2; for (int r 0; r n; r) { for (int col 0; col n; col) { if (abs(r - c) abs(col - c) c) cout *; else cout ; } cout \n; } }我第一次用這個(gè)模板做菱形時(shí)最大的收獲不是記住代碼而是理解“圖形 坐標(biāo)集合”。你只要能把圖形的輪廓轉(zhuǎn)換成一個(gè)不等式剩下的代碼就是雙重循環(huán)的問題。三角形、平行四邊形、X型圖案全部是這類思想先定位再判斷最后輸出。6.2 菱形與回形兩個(gè)生成模板比起菱形回形矩陣也叫蛇形填數(shù)復(fù)雜一點(diǎn)它是按一定方向在二維數(shù)組里填入 1 到 n2 的數(shù)字碰到邊界或已經(jīng)填過的格子就轉(zhuǎn)向。經(jīng)典做法是用方向數(shù)組int dx[4] {0, 1, 0, -1}; int dy[4] {1, 0, -1, 0}; int dir 0; int x 0, y 0; for (int num 1; num n * n; num) { a[x][y] num; int nx x dx[dir]; int ny y dy[dir]; if (nx 0 || nx n || ny 0 || ny n || a[nx][ny] ! 0) { dir (dir 1) % 4; nx x dx[dir]; ny y dy[dir]; } x nx; y ny; }這里最核心的技巧是“先探路再移動(dòng)”每次填完數(shù)字先嘗試按當(dāng)前方向走出一步如果下一步越界或者已經(jīng)被填過就轉(zhuǎn)向再重新計(jì)算下一步。這樣代碼非常統(tǒng)一不需要為四個(gè)方向各寫一遍判斷。我見過不少同學(xué)用 if-else 把四個(gè)方向分開寫代碼又長又容易漏方向數(shù)組就是來一勞永逸解決這件事的。圖形打印還有一個(gè)很多人不在意的輸出細(xì)節(jié)行尾空格。某些 C 判斷系統(tǒng)對(duì)輸出非常嚴(yán)格每行末尾多一個(gè)空格可能直接判 Wrong Answer。如果題目沒有明確說允許行尾空格建議要么用二維字符數(shù)組先全部填充再一次行輸出要么在循環(huán)里控制最后一個(gè)字符后不打印空格。我踩過一次這個(gè)坑從那以后所有輸出類題目我都會(huì)額外檢查一遍行尾有沒有多余字符。這個(gè)習(xí)慣在圖形打印題里尤其重要。最后再分享一個(gè)小技巧圖形打印題的調(diào)試不要只看最終輸出把行號(hào)和列號(hào)標(biāo)出來按坐標(biāo)對(duì)照題目給的示意圖能很快就定位是條件寫反了還是邊界算錯(cuò)了。配上abs或方向數(shù)組的模板圖形打印題真的是算法題里最容易拿到滿分的類型千萬別在這上面丟分。寫完這些專題我最大的體會(huì)是它們單獨(dú)拎出來都不難真正難的是組合。拼數(shù)這道題外殼是字符串內(nèi)核是貪心鑰匙是逆向構(gòu)造比較規(guī)則二叉排序樹是動(dòng)態(tài)有序性的骨架鏈表把模式匹配從“能隨機(jī)訪問”的世界拽回“只能往前走”的世界圖形打印練的是把思路落成輸出代碼的手感。刷題別只背結(jié)論多問一句這個(gè)題反過來想行不行、換成鏈表還能不能做、數(shù)據(jù)順序會(huì)不會(huì)卡掉樹結(jié)構(gòu)這樣刷一道題的收獲會(huì)比趕十幾道題的進(jìn)度更大。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
老妇女91| 国产捆绑一区| 91狠狠综合久久久| 亚洲欧洲成人在线电影| 亚洲超碰综合网| 97超碰巨乳| 久草男人天堂| 一本久道久久综合狠狠爱| 亚洲欧美碰碰| 夜夜嗨一区二区三区三州加勒比| 91丝袜美女国产| 思思热在线视频免费| 亚洲天堂日本| 国产精品91ai| 欧美大码在线视频| 玖玖在线视频| 亚洲最大的综合性av| 1769成人国产精品视频| 天天射天天| 日韩有码 一区二区三区| 国产激情在线| 欧美亚洲一区二区久久久婷精品大包诱| 日韩AV电影网站| 97精品国产97久久久久久| 五月开心久久AV官网| 国产高清亚洲日韩一区| 欧美日韩性爱精品| 加勒比久久av| 围产精品一区二区三区视频播放| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 国产高清成人免费视频| 美骚妇av高清在线| 91欧美巨乳| 99老司机精品视频在线观看| 亚洲春色激情小说| 欧美色涩| 水澄无码AV| 东京热双插| 五月天开心网| 超碰97亚洲| 久久精品免费| 亚洲日韩东京热一区| 91亚州欧美| 精品-91人妻子系列| 黄片免费视频2019| 天天摸天天舔天天操| 激情专区综合| 久久东京伊人一本到鬼色| 91痴汉| 午夜情侣自拍网站| 粉嫩av在线一区二区| 男人天堂新在线| 麻豆一区在线| 77777亚洲蜜臀精品久久综合蜜臀| 国产91av在线播放| 78精品在线| 97在线视频观看| 亚洲人成色9999精品久久| 一本久久精品中文字| 亚洲图片另类| 精品九九九九九九九| 狠狠干91| 久久精品天美| 91色人| 熟妇乱伦一区二区| 素人播放一区| 国产福利一区二| julia在线观看久久| 九九九九九精品| 欧美另类色图片| 少妇高潮九九九九| 久久免费老司机精品| 97亚洲精品| 97碰碰色| 99只有精品| 亚洲日韩精品一区二区| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 四虎影视 亚洲无码| 91网亚洲| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 欧美色九九| 无码色| 囯戸精品高潮呻吟旡码| 国际精品久久久| 国产精品一二三区18| 天天综和| 亚洲无码精品AV久久久| 久久久性爱视频| 国产福利在线视频网站| 啊啊啊啊好大好硬啊啊啊啊啊 | 久久久久久日韩| 欧美不卡五十路| 免费看欧美美女黄色大片 | av在线人气 | av优播| 另类欧美综合| 久久久一热在线播放| 调教熟妇 久久久久久| 蜜臀av一区二区三区免费观看| 韩国一级婬片A片AAAAA| 国产第二页| 免费视频观看60秒| 黑人猛交| 人人操人人摸人人看人人干| 综合五月天| 欧美一区二区三区黄色影视| 成人怡红院| 色吧 综合| 后入国产| 91爆操视频| 吖在线不卡一区二区国产剧情| 中文字幕91综合| 搡老女人老熟女91老熟女综合网| 中文字幕啊啊啊在线观看视频| 99re这里只有精品3| 天天影视网综合少妇| 性九九九九九九| 高清国产无码av| 五月婷丁香| 二三四区精品| 国产精品久久久无码AV网站| 亚州 综合 色图| AV一区观看| 嗯……啊…嗯嗯…啊…好舒服| 国产成人精品网站| 1024亚洲中文字幕久在线看片你懂的 | 欧美中文综合| 97视频观看| 中文字幕人妻丝袜乱一区三区| 久久直播国产| 国产和美国毛片| 啪啪91| 午夜男人的天堂| 99热这里是精品| 国产白丝网站| 98一区二区精品| 九九九九九九九九九国产精品| 色婷婷五月综合| 大香久久| 91人妻视频| 亚洲精品国产熟女久久久久久| 亚洲大色堂| 国产91啪| 亚洲黄色AV电影| 男人的天堂2018.| 人人 操人人 操人人| 国产精品粉嫩福利在线| 婷婷激情五月综合| 日本性感人妻91| 99综合自拍| 日韩黄片视频试看| 竹菊一区二区三区AV线| 人妻天天操天天爽视频免费| 色婷婷视频| 欧美专区17页| 欧美熟爽综合| 欧美黄片欧美黄片xxx| 嗯嗯啊啊日韩精品| av在线人气| 福利色色| 日韩熟女无码| 日韩在线地址一| 国产97视频免费观看| 一起草av| 国产强奸乱伦xd| 九一综合网| 久热无码| 亚州免费啪啪视频| 亚洲精品人体| 国产精品久久久久久久久久二区三区| 色婷婷视频| 26UUU欧美日本| 国产乱子伦一区二区三区免看| 综合激情五月天| 国产乱色国产精品免费视| 天天搞欧美| 国产久久久9999| aaaa黄片| 久久黄色性爱视频| 久久精品国产Aⅴ| 色综合 加勒比| 女人爽到高潮久久久| 日本高清_区二区三区| 97亚洲在线| 91亚洲欧美综合高清在线| 操狠狠| 国产女人极品高潮毛片| 17c在线成人免费A片观看| 新91视频.cmp| 欧美国产操逼| 人妻酒店出差被中出免费在线播放| 欧美午夜精品久久久久久超碰| 亚洲一区二区三区中文字幕| 国产v亚洲v日韩v欧美v片另类| 人妻素股| 大香蕉中文网| 天美av在线| 99热 按摩 日韩| 九九玖玖精品| 小草精彩毛片| 97爱爱爱| 少妇天堂| 欧美亚洲图片| 色逼综合| 中文字幕av亚洲精品| 粉嫩AV一区二区夜夜| 久久精品91| 麻豆 亚洲 97| 亚洲久草AV色图| 日影院久久婷婷夜夜网| 亚洲九九视频在线观看| 无码操逼天堂| 色777999综合| 99久久久| 欧美亚洲系列| 东京热男人的天堂| 乱伦一二三| 人人人干干人人干| 人人玩人人添人人澡免费| 午夜小电影在线插入淫高潮| 电家庭影院午夜69久久夜色精品国产69乱 | 少妇一区二区三区高速| 国产特级毛片AAAAAA高潮流水| 欧美日韩在线小说 | 欧美性爱伊人| 99九九精品| 狠狠色色| 91夜夜蜜桃臀1区2区3区| 岛国小电影| 九九拍拍精品视频在线播放| 日韩 欧美 视频 在线 一区| 国产精品久久久久久久毛片1| 天天看天天在线精品| 无码操逼网| 牛牛aV| 久99热| 色噜噜人妻av 中文字幕| 综合干干干av久久久综合网| 久久精品电影| 神马麻豆福利院| 色综合一区二区三区| 亚洲欧美一区二区网址| 国产第25页在线观看| 亚洲午夜av| 天天欧美色| 久久久噜噜噜久久人妻| 久久久久久综合久久伊人蜜月| 中文字幕丰满人妻日本| 天天插天天操| 西西美女视频网| 中文字幕国产| 久久久久久久伊人精品| 男人天堂2019亚洲| 男人天堂网手机版婷婷| 成年无码动漫av片无尽在线| 国产精品极品美女视频| 蜜色网色哟哟| 五月天人妻综合| 久久色网| 乱色视频中文字幕| 中亚黄色三级大片| 日韩成人私密一级精品av| 美国aaaaa一级黄片| 日韩啪啪啪啪啪| 亚洲色悠悠久久88| 欧美人与动性人交a| 国产一区二区av综合| 日日天天久久啊啊aaa| 国产欧美日产一区二区三区 - 国产欧美日 | 二对二中文字幕。| 操逼操逼操| 欧美极度丰满熟妇hd| 伊人青青一区成人视频在线观看区| 蜜桃狠狠色伊人亚洲综合 | 20cm女自慰在线日韩欧美| 天天草天天干天天日| 久久人人爽爽爽人久久久| 久久香蕉国产线看观看猫咪av| 天天肏美女| 超碰97伊人| 国产成人精品无码久久| 2017大香蕉国产精品久久| 啊啊啊啊好疼| 91超级碰碰碰| 亚洲se91| 丁香五月性| 激情文学小说一区二区| 3d成人精品一区二区| 91久久午夜无码鲁丝片久久人妻| 成年人黄色| 伊人AAA| 可乐操亚洲蜜911| 国产成人无码网站在线视频| 欧美91久久久久| 欧美精品日韩久久久九| 麻豆激情综合| 欧美另类综合久久| 亚洲素人网| 蜜乳AV一区| 青青操在线亚洲视频观看欧美在线 | 啊啊啊啊啊啊啊啊啊啊在线观看| 17c在线成人免费A片观看| 自拍丝袜美腿人妻| 欧美特大AA级黄片| 欧亚日韩三区| 久久鲁干| 精品无码少妇| 国产伦精品免编号公布| 国产黄色在线播放观看| 自拍亚洲综合| 黑丝少妇在线观看| 国产女人视频三四五区| 色 婷97| 狠狠操夜夜| 九色 蝌蚪 熟女自| 五月丁香在线| av网站国产主播在线| 麻豆福利视频导航| 女人爽到高潮潮喷18禁网站| 久久精品一区二区| 男人网站婷婷| 婷婷综合激情| 蜜臀无码视频在线观看| 久操网在线| 亚欧国产无码精品在线| 久久久久久97| 夜夜 中文视频rt| www.91色| 日韩黄片视频试看| 免费男人的天堂| 国产suv精品一区二区四区999| 秋霞操逼片| 懂色av中文字幕一区二区三区天美| 色婷网| 国产主播福利| 后入日本1234| 精品一区96| 嗯啊抽插大香蕉网页| 国产麻豆91欧美一区二区久久婷婷国产精品| 99热最新| 欧美aa一级片| 色99999| 亚洲AV在线资源| 黄色网址久久精品欧美喷水| 女人被添高潮免费视频| 国内毛片婷婷六月色| 久操免费观看| 久久久无码精品人妻二区| 精品久一区免费| 夜嗨影院| 一级做a爰片久久毛片图片| 大香蕉中文网| 久久熟女久| 91N欧美| 99久久久无码国产精品性男| 国产美女裸体秘 永久无遮挡| 天天综合91入口| 天天日天天屌天天操| 久久久九97| 美女操逼福利视频| 欧美日韩国产黄色片| 久久久久久性爱免费视频| 欧洲亚洲天堂精品| 欧美久久婷婷| 久久超碰免费的| 婷婷尹人大香蕉免费| 亚州操逼图| 亚欧无码线免费观看视频| 天天天肏屄肏屄肏屄欧美欧美| 亚州熟妇精品| 久久亚洲色图中文字幕| 午夜欧美J进J出白浆流出久久久| 国产女人高潮视频| 丁香色婷婷| 黄片无码在线制服| 青椒国产97在线熟女| 超碰免费人妻人人| 乱伦熟女专区| 欧美大香蕉久| 欧美人与动性人交a| 五月天亚洲色图| 久久三区四区| 老女人综合| 欧美综合综合| 亚洲开心网| 啊啊啊好舒服视频| 先锋影音av先锋一区| 日韩视频中文字幕| 日韩免费簧片| 为用户提供免费看黄网址在线观看| 国产精品高潮久久久无码| 人人操欧美风骚| 欧美亚洲激情| 思思久热在线精品66| 人人搞人人插人人操| 欧美色网| 日本免费专区| aaa一级黄片| 五月婷婷五月天| 欧美色三级片91| 国产人伦精品一区二区三区| 欧美亚洲高清不卡| 亚洲校园激情| 中国AAAAAA黄色片| 岛国视频一二三区| 99在线精品观看99| 久久精品视-一级做a爰片性色毛片16美国-中国女与老外在线精品 | 99只有精品| 国产一区二区久久| 亚洲男人天堂网站| 欧美操人视频| 久久久久久国产手机AV| 色色色热| 激情综合网一盗摄| 日韩91网站| 欧美视频一| 艹比视频国产精品| 亚洲影视综合网| 中文久久一区| 日夜尻逼网| 97免费在线| 欧美亚洲第一页| 性爱乱伦一区| 亚洲熟妇乱女区二区三区| 日韩精品操少妇| 97在线欧| 天天日天天搞天天干| 激情五月天丁香社区| 混色激情av| 色五月激情AV在线| 国产黄色剧情影片麻豆免费播放| 另类小色呦| 97中文超碰| 久久久91福利姬| 日本精品五区| 日韩午夜啪啪视频| 黑人与人妻| 夜色综合| 婷色五月| 97欧美色综合| 欧美五十路熟| 啊好大好舒服| 婷婷五月天激情四射| 色欲无码人妻日韩欧美精品| AV天堂男人的天堂| 中文字幕精品探花视频| 开心五月婷婷激情| 黄色一区三区| 亚洲国产婷婷在线播放| 日韩精品三区四区| 精品熟女呻吟久久91| 亚洲欧美日韩精品久久久一区二区| 久久9亚洲| 欧美se综合| 亚洲AV无码国产精品久久久久| 欧美永久激情一区二区| 天天日天天操天天射河南省| 99少妇精品视频| 天天综合91入口| 在线无码操| 啊啊啊快操我视频| 被男人吃奶很爽的毛片| 久草资源在线视频官方总站日韩丝袜美腿 | 另类亚洲一区二区三区| 97内射偷拍| 91综合色| 美女人妻色网站| 国产精品久久久久久久久久久久| 四虎AV在线观看| 欧美瑟综合| 在线性黄高清免费视频| 91老妇女| 色99视频| 国产剧情在线| 亚洲伊人久久精品狠狠在线| 国产精品无码成人精品| 亚洲人妻熟妇三十三区| 国产精品国产自产高清AV| 欧美白嫩女HD| 成人三一级一片aaa| 亚洲AV色图一区| 大地资源在线观看中文第二页| 粉嫩久久久极品| 91干熟女| 男人午夜天堂| 操逼内射干逼白丝91| 欧美伊人久久综合网| 国产精品久久久999| 亚洲欧综合另类无码一区| 91国内外在线| 九九热免费视频| 精品九九| 久噜噜| 国产成人精品日本亚洲语言| 久久久91| 免费久久9999| 国产做?爰片久久毛片?片美国| 欧美综合色图网| 欧美在线官网| 欧美黄色片在线播放| 啊啊啊啊啊啊啊啊啊在线观看| 翔田千里av一区二区三区| 丰满人妻一区二区三区| 色五月第四色| www.色五月| 欧美中文字幕日韩在线| 色偷偷2020免费视频播放| 亚洲少妇色| 成人自拍三级在线观看| 亚洲玖玖爱| 天天摸天天插天天日| 大黄片做爱的大的| 午夜毛片亚洲精品片国产久久久| 中文字幕AV片| 美女尤物福利视频| 人妻中文字幕日韩电影| 午夜舔阴达高潮视频免费看| 亚洲情色无码一区二区三区| 射丝袜高跟鞋99| 黄网色一区二区三区四区精品| 国产性爱强奸乱伦大全| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 97色欧洲| 天天激色| 精品小视频在线| 67194国产| 亚洲最新中文字幕免费| 不卡av免费在线网址| 九99久久| 欧美天堂亚洲电影院一区在线播放| 男人的天堂2019AV| 久久久精品成人国产| 亚洲AV成人精品网站在AV| 国产97色在线 | 亚洲| 欧美成人色| 亚洲 欧美 中文 日韩超碰| 免费一级欧美片片线观看| 一级AV性爱| 91天天| 97超级久久| 久久久神马影院| 性色av一区二区| 国产九九久久久精品| 五月激情小说| 激情五月婷婷| 亚洲激情综合| www.五月天| 99久久网站| 欧美日韩操逼嗦吊| www色婷婷| 日韩一级片在线看| 天堂8在线新版官网| 激情视屏国产乱伦强奸| 国语国产操逼伊人AV网| 国产精品干干干| 亚洲国产91精品一区二区久久| 色网色网色网色网色网色| 久久精品区| 东京太热男人的天堂久久久| 97se亚洲综合自| 日韩一级二级三级| 日韩有码专区| 综合久久97| 天天综合亚洲综合| 国语对白露脸XXXXXX| 亚洲影院无码在线| 亚洲欧洲综合成人av一区| 成人26uuu| 看免费的黄片| 欧美日韩电影成人在线| 萌白酱自拍视频| 亚洲囯产精品女人久久久| 一级婬片120分钟试看| wwwxxx日本爽| 淫荡少妇免费| 色婷婷综合网| 日本免费中文一区二区三区四区| 久久人妻精品| 亚洲AV乱码专区国产噜噜亚洲| 欧美日韩国第一区| 超碰98综合网| 加勒比av网| 78m成人视线| 97超碰久久| 中文字幕日韩专区精品系列| 成年女人黄网站| 久久久久亚洲?V片无码V| 一本精品日本在线视频精品| 男人的天堂 在线一区| 六月天婷婷| 9久超碰| 亚洲 欧美 中文 日韩超碰| 大香蕉手机在线视频| 亚洲熟妇丝袜在线观看| 四虎视频在线观看| 欧美日韩亚洲少妇寂寞影院正在播放 | 亚洲天堂男人的天堂| A级片日韩欧美国产欧美视频精选观看| 久久久999日本大片| 爱爱动态120秒| 色在线69堂| 日韩91网| 天天操夜夜操狠很操| 欧美日韩性爱操大逼| 青青草视频久久| 国产第二页| 久久啊啊| 91操人| 久久理论字幕视频| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 久久久久78| 日产精品久久久一区二区| 国产精品96久久久久久| 青娱乐国产盛宴视频| 亚洲精品男人的天堂| 老熟妇一区二区三区啪啪| 久久久精选| 九九九精品成人免费视频小说| 国产成人在线观看综合| 日韩99999色| 97爱爱官网| 欧美精品23| 国产强上视频在线观看| 久久一区,青青青青草视频在线播放| 97久久国产亚洲精品超碰热| 蜜臀AV秘一区翔田千里| 97人妻碰碰中文无码久热丝袜| 伊人久久亚洲中文字幕不卡| 久久色精品视频在线| 国产综合网站在线播放| 丰满少妇高潮无码| 色婷婷一区二区三区久久| 90后性网国产欧美| 欧美熟妇亚洲版| 精品无码一区二区三区| 超碰公开久久网| 亚州精品人妻一二三区| 国产强奸超碰AV| 91麻豆天美国产| 色综合一本| 五月婷婷丁香| 欧美色老汉| 91久久久久久久久18| 狠狠做深爱婷婷久久二区| 无码免费在线观看黄色片| 九月丁香婷婷| 秋霞一集毛片观看| 九一亚洲国产免费| 草草草草视频| 婷婷情色综合网| 日韩精品-原创伙伴| 97五月天| 97亚洲在线| 淮穴色AV| 韩国一级做a久久久久| 国产情侣自拍在线播放| av资源在线播放天堂| 天天躁狠狠躁av| 色色色天美视频| 91女人的网站| 色哟哟 日韩精品| 欧美熟妇乱码在线一区| 久久午夜鲁丝片| 国产乱码精品久久久久久| 国产成年女人免费视频播放a| 中文字幕一区二区三区人妻少妇在线| 精品综合久久久久久五月天| 人人操天天爽| 国产51色综合久久免费| 97视频在线视频| 免费A V在线| 亚洲情色 自拍| 一区二区三区四区色图| 国产中出内射一区二区| 天天天乱色综合全| 影音先锋乱| 中文字幕久久亚州无码| 狠狠激情综合狠狠操中文字幕| 久久久久久久久久久久97| 九九精品热| 极品欧美一区二区三区| 欧美成人一区二区| 丰满人妻av一区二区三区| henhen91| 中美日韩毛片| 新版天堂中文资源8在线| 欧美色图片色哟哟| 91青视频| 欧美日韩国产色图在线| 久操视频这里只有精品| 伊人国产视频| 国产精品一区二区黄片| 国产精品白领在线观看 | 久久精品综合| 国产蜜臀精品一区免费尤物| 香蕉久久AⅤ...| 亚洲色图 91| 99热aaa| 亚欧韩av| 一区二区三区黄色片a| 久久天堂网| 91欧| 国产免费一区| 91原创在线观看| 国产一区二区欧美日本| 精品91| 99在线精品观看视频中文| 欧美综合97www| 大香蕉综合| 欧美偷拍区| 久久国产成人精品国产成人亚洲 | 夜夜操美女| 亚洲综合色图欧美| 久无码| 开心五月激情网| 国产精品视频自拍在线| 老女人综合网| 亚洲双插| 后入式999| 久久国产对白激情浪潮| 国内精品不卡无毒99999| 国产精品成人蜜臀AV在线| 亚洲?V无码专区在线电影| 精品一区二区三区蜜桃| 中出20p| 亚州色图欧美| oumeisetu综合| 五月婷婷六月天| 国人欧美精品一区二区| 亚洲国产ⅴ高清在线观看| 91精品国产91久久青草| 亚洲女人91| 情色五月天就去干| julia ann久久| 清清草影| 亚洲日产专区婷婷| 怡春苑东京热| 中文幕97| 国产美女激情| 亚洲天堂情色| 噜噜噜久久亚洲精品色情| 91美女视频在线| 综合干干干av久久久综合网 | 91亚洲狠狠色| 欧美精品三区| 粉嫩久久久久| 午夜无码熟妇丰满人妻| 九九九九九九免费视频| 亚洲精品不卡一二三区| 999九九九九国产动| 天堂亚洲精品久久老牛| 男人的天堂久久狠| 欧美丝袜美女电影一二三四区| 精品人妻一二三四区视频| 欧美影音在线| 中出20p| julia ann久久| 国产激情在线| 日本媚薬中文字幕在线| 日本二区不卡| 一级AAA片一区二区三区| 今日头条成人一区二区三区四虎精品| 亚州综合色图| 亚洲自拍青操视频| 玖玖久久久| 精品天堂| 人人干黄色| 五月丁香拍拍激情综合三级| 国产激情片在线观看| 操逼日韩无码 | 啊好大好舒服| 亚av顶级裸体一区二区三区四区五区| 亚热日本熟女| 欧美色图欧美| 亚洲伊人成综合成人网| 亚洲一区日韩精品中文字幕| 国产一区二区三区视频在线看| 欧美精品日韩久久久九| 国产精品 久久久精品一牛| 久草免费福利在线播放| 欧美一级三级| 操B久久| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 欧美午夜色妇色鬼| 欧洲精品欧洲精品| 国产精品99999| 国产绿奴视频在线观看| 五月激情综合网| 啊啊啊好舒服好爽啊啊啊视频| 日韩色图 一区二区| 97超碰美女| blacked精品一区国产| 色色丁香| 青青色综合| 亚洲蜜臀精品视频久久| 免费?级毛片无码?∨蜜芽试看| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 91网站视频在线观看| 老熟女综合网| www.yeyecao| 校园春色 男人天堂| 91高跟美女在线播放| 亚洲欧美伦综合| 国产东北女人在线视频| 99精彩视频| 久久99草| 一级乱伦网站| 99精品久久久久久久婷婷蜜桃| 99re这里只有精品3| 久超碰这里只有精品| 国产精品嫩草影院午夜两性| 99色在线| 一区二区播放| 精品成人动漫一区二区| 九九视品黄色| 91 偷| 中日韩欧美精品无码AⅤ一区二区| 久久久久久久久久久久久久久乱码 | 精品女同一区| 凹凸久久人人| 国产超碰在线一区| 欧美性爽xyxOOOO| 大香蕉乱伦视频网| 国产AV天美传媒一区二区三区| 操屄日韩| 欧美天天综| 老司机福利社视频在线观看| 自拍偷拍 高清无码| 日韩天天本| 国产综合日韩伦理| 九九久久一区二区三区| 大香蕉视频啪啪啪啪| 国产成人无码久久精品| 老熟女中文字幕高清| a一区二区三区乱码在线| 爱干爱射网啊啊啊| 亚洲无码电影久久久| ?亚洲伊人伊成久久人综合网| 97久久久精品| 操迟操逼在巾线Fre看| 中文字幕在线观看AV| 亚洲一二三四区| 夜夜爽77777| 97Ai亚洲| 久久色激情一区二区三区| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 天天视频黄网站| 亚洲男人的天堂在线看| 国产亚洲精品美女久久久m| 午夜精品人妻二区三区| 色色香蕉| 四虎884| 国产亚洲国产超碰| 欧美瑟综合| 成人婷婷丁香| 屁股久久久久久久| 中国黑人三级片网站上区| 亚洲密乳AV| 日本熟妇色熟妇在线视频播放| 中英熟女操女| 人妻天天爽| 成人欧美一区二区三区黑人一| 亚洲天堂资源在线| 亚洲男人的天堂V| 国产又猛又粗又爽又黄| 99re在线视频| 4399成人黄A片| 极品销魂美女一区二区| 亚洲色图加勒比| 黑人操一区二区| 中文字幕第95页| 91狠狠综合久久久久久| 强奸乱伦AV一天堂网| 日韩78m视频| 久热婷婷| 日韩在线AB| 国产女人极品高潮毛片| 9 1超碰九色| 国产伦精品免编号公布| 日本一区二区三区免费观看| 97久久国产精品| 亚洲中文字幕97久久精品少妇| 国产成人拍国产亚洲精品| 怡红院亚洲怡春院av| 色性综合| 国产AV毛片| 欧美色图91| 男人精品天堂一区| 九九久久综合| 影音先锋视频在线| 国产精品伦理| 精品中文日韩字幕视频| 99在线免费视频| 乱伦一区二区三区‘| juliaann丝袜| 日韩电影天堂视频一区二区| 夜夜一区二区| 国产女人和拘做爰视频| 久久久新亚洲AV| 4虎在线视频| 久久夜夜夜夜| 曰韩精品九九无码| 少妇高潮特黄A片| 强被迫伦姧在线观看无码网站| 黄色一区三区| 男人干美女| 丁香六月激情综合| 岛国网址国产 | 99免费视频| 国产女人与拘做受视频免费| 国产品精品自在在线午夜免费| 人妻一区久久二区三区色播| 亚洲五月丁香花狠狠干一区二区三区 | 久久这里只精品99re66图| 色在线视频导航| 成人性交免费视频| 国产乱码久久久久久| 欧美黑人与女人91~| 人妻熟女一区在| 激情综合二| 啪啪啪东京| 免费精品无码一级毛片牛牛影视| 亚洲精品国产拍免费91在线| 国产第11页| 91九九九小逼| 色婷婷综合久久久久中文一区二区| 性爱av网站| 日韩中文字幕在线视频观看| 国产黄片精品在线| 成人性爱av| 操屄日韩| 丰满美女一级毛片在线播放| 超碰美女97| 亚州,欧美在线| 超碰色美女| 日本免费一区二区不卡| 99re6国产精品99re| 99精品欧美一区二区三区桃色| 国产一区二区三区高清视频| 色悠久| 亚洲色图欧洲| 久久久久久精| 九九九九精品精| 黄页| 久久大| 操啊国产| 福利操逼| 亚欧视频在线| 欧美视频边做饭边橾| 伊人久久大香线蕉无码| 嫩草影院在线观看精品 | 超碰久久网| 日本久久久精品电影| 乱码人妻一区二区三区| 超碰97资源网亚洲| 青青草原av| 亚洲色图91| 性色aV一区二区三区噜噜| 欧美日韩另类激情图片| 日韩亚洲欧美中文字幕| 国产精品美女视频诱惑| 日韩一区二区精彩视频| 国产一区二区三区免费视频在性观看| 久久国产成人精品国产成人亚洲| 亚洲国产精品无码AV久久| 久久性爱视频99| 亚洲熟女性高潮久久久| 立川理惠无码一区二区| 欧美亚洲综合色| 97久精品| 91精品久久久久久久久久| 久久久一区二区| 久久久夜夜夜| 97在线播放| 国产无码成人无码| 操逼天美3区| 91人人臊| 蜜臀亚洲中文| 欧美天天综合站| 特色a在线上| 少妇人妻好深太紧了vr91| 91足交| 精品一区二区三区最新| 青青伊人久久| 一区二区影视| 日本东京热加勒比久久| 国模精品娜娜一二三区| 天天综和| 欧美色综合图片| 欧美日韩欧美| 神马久久久久久伦理片| 一块操欧美性爱| AV高清一区| 上床啊啊啊| 97人人夜夜精品视频| 五月婷婷六月色| 国产久久日韩网站导航| 中文字幕一区二区无码成人| 久久国产免费激情视频| 99热免费| 天天干1区2区在线| 日日骚AV| 色婷婷视频| 欧美日韩另类字幕中文| 99re98| 欧美日韩第一页| 欧美暴力猛交| 日韩情色一区二区| 夜夜影视四色| 福利风月五月天影院| 中文字幕人妻丝袜乱一区三区| 少妇人妻好深太紧了vr91| 中文久久| 99无码精品| 囯产精品强| 99老司机精品视频在线观看| 亚洲,欧美,春色,另类 | 久久99精品视频| 欧美综合 站| 囯产精品久久久久久久久久梁医生 | 国产精品999aaa| 婷婷五月天成人网| 噜噜噜亚洲精品| 日韩激情毛片一级久久久| 欧美嫩性色| 伊人宅男大香蕉| 亚洲欧洲国产综合av| 97丝袜亚洲在线播放| 日韩性爱一级片| 天天日老熟妇| 国产精品一区二区三区在线| 五月丁香社区婷婷日韩欧美精品影院| 伦理弟一页| 亚洲啪啪视频免费| 夜夜操91744565| 色色毛片| 综合色图区| 超碰97久久| 国产又色又爽又舒服的三级视频 | 日韩熟女无码| 伊人97色天使| 中日韩一区二区三区欧美| 91校园春色长篇| 加勒比综合88| 亚洲精品 大香蕉| 欧美日韩亚洲天堂| 中亚精品极乱| 青青草AV色| 97操操| 亚洲人天堂| 欧美成人9797| 亚洲一区二区三区春色| n1038 一二三区| 粉嫩av平台| 欧美日动态视频| 色噜噜精品一区二区三| 亚洲网污污污污| 俺去俺来也在线www| 欧美色九九| 婷婷丁香五月综合| 粉嫩av在线| 99久在线精品99re8热| 伊香蕉综合久久久久久久噜噜噜 | 男人天堂久久精品不卡| 色婷亚洲五月在线观看| 日韩精品亚洲一二三| 亚洲国产欧美日韩人妻日中文| 日韩特级毛片免费观看全集| 九一综合精品视品av| 岛国大片国产| 美女91在线观看| 国产精品久久久久久片| 三级色影综合网| www四虎| 国产成人手机视频激情| 男人的天堂com| 中文字幕国产精品1区| 中国少妇XXXX做受| 综合少妇网| 午夜激情床戏激情| 免费精品人妻一区二区三| JuliaAnnXXX888| 亚洲熟妇图片| 84YTCOM性无码| 国产精品视频播放| 亚洲1区| 翔田千里AⅤHD无码| 操曰本熟女| 亚洲精品819| 国产久久av| 欧美色性情| 校园春色中文字幕AV| 日韩三级视频一区二区三区| 91欧洲国产成人久久精品网站| 亚洲性猛| 亚洲不卡av在线| 美國A片| 亚洲日韩人妻中文字幕一区| 91色伦| 超碰在线974| 中文字幕在线观看视频www| av在线播放国产一区| 欧美偷| 夜草欧美| 一本一道人妻久久一区二区三区 | 97伦乱| 99 国产丝袜在线| 国内毛片免费h片在线| 国产三级资源在线观看| 人妻精品一区二区| 午夜综合在线| 男人的天堂成人的社区| 色色五月婷| 热久久国产| 精品人妻一二三| 久久9精品| 日本一区99| 国产av高清版| 国产激情久久久| 岛国艾薇凹凸视频天堂| 日韩啊V| 啊啊啊啊好多水| 亚州精品人妻一二三区| 久久大线蕉一区| 中文字幕加勒比海高清无码免费视频| 120分钟婬片免费看| 久久91精品国产9丨久久分亭| 亚洲一区中文精品| 97天堂| 亚洲一区中文字幕| 久艹99| 人人摸人人舔一区二区| 91亚洲欧美色图| 精品国产网站| 国产在线不卡导航| 日韩人成网站在线播放| 日韩免费大片一级播放| 亚洲性爱电影| 久久久久久久九九九九九九| 亚洲在线91| 极品白嫩美少妇在地板上位骑射淫水泛滥| 欧美黑人与女人91| 精品美女人人干| 国产自啪精品视频网站黑丝| 国产乱子伦一区二区三区免看| 久久久久久九九九九-美女久久久久久久-成人AV| 久久久久久久久久久精| 色网在线| 精品176精品2| 欧美国产有色电影| 大乔未久88一区| 97超碰巨乳| 久草精品一区| 国产精品乱码久久久、久久| 人妻天天爽夜夜爽2| 热的中文 热的有码 热的国产| 国产人人干| 高颜值美女口爆高潮浪叫| 国内外毛片在线观看| 4tube欧美女厕所|