国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

基于SAT的蜂窩數(shù)獨(dú)求解器:C++課程設(shè)計(jì)中的CNF編碼與DPLL實(shí)踐

基于SAT的蜂窩數(shù)獨(dú)求解器:C++課程設(shè)計(jì)中的CNF編碼與DPLL實(shí)踐 簡(jiǎn)介這份資源是華中科技大學(xué)2022級(jí)程序設(shè)計(jì)綜合課程設(shè)計(jì)的任務(wù)設(shè)計(jì)問題成果主題為基于SAT的蜂窩數(shù)獨(dú)游戲求解程序面向計(jì)算機(jī)、人工智能、通信工程、自動(dòng)化等專業(yè)的在校學(xué)生與教師也適合作為課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)或算法學(xué)習(xí)進(jìn)階的參考案例。壓縮包共11個(gè)文件約1.23MB以7個(gè)cpp源文件與1個(gè)h頭文件構(gòu)成核心代碼涵蓋SAT求解器與蜂窩數(shù)獨(dú)轉(zhuǎn)CNF公式兩大板塊另附1份pdf實(shí)驗(yàn)報(bào)告、1個(gè)md說(shuō)明文檔及gitignore配置便于理解整體架構(gòu)與實(shí)現(xiàn)思路。目前已有150人學(xué)習(xí)關(guān)注。讀者可從中獲得完整的SAT建模與DPLL求解實(shí)現(xiàn)、數(shù)獨(dú)約束到CNF的轉(zhuǎn)化邏輯、可運(yùn)行的C工程代碼以及答辯評(píng)審平均96分的實(shí)驗(yàn)報(bào)告適合直接研讀、復(fù)現(xiàn)或在此基礎(chǔ)上擴(kuò)展其他約束求解功能。1. 從華中科技大學(xué)這道課設(shè)說(shuō)起SAT 求解器怎么把蜂窩數(shù)獨(dú)啃下來(lái)蜂窩數(shù)獨(dú)不是普通九宮格。它把 81 個(gè)格子換成六邊形蜂窩結(jié)構(gòu)每個(gè)蜂窩單元有 6 個(gè)鄰居約束關(guān)系從「行、列、宮」變成「蜂窩環(huán) 斜線 區(qū)域」規(guī)則一變回溯搜索的剪枝效率斷崖式下跌。華中科技大學(xué)程序設(shè)計(jì)綜合課程設(shè)計(jì)里這道「基于 SAT 的蜂窩數(shù)獨(dú)游戲求解程序」本質(zhì)是讓你把數(shù)獨(dú)的約束編碼成合取范式CNF再交給 SAT 求解器判定可滿足性而不是自己寫一個(gè)暴力 DFS 硬搜。這個(gè)思路在 C 課程設(shè)計(jì)里屬于「看起來(lái)超綱、做起來(lái)真香」的典型你不需要發(fā)明算法只需要把問題翻譯對(duì)剩下的交給 DPLL 或 CDCL 引擎。適合已經(jīng)學(xué)過(guò) C 基礎(chǔ)、想拿一個(gè)能寫進(jìn)簡(jiǎn)歷的完整項(xiàng)目練手的人也適合被回溯超時(shí)折磨過(guò)、想看看工業(yè)級(jí)約束求解長(zhǎng)什么樣的同學(xué)。下面我按自己復(fù)現(xiàn)這套方案時(shí)踩過(guò)的順序把編碼、求解、驗(yàn)證、排錯(cuò)一條線講透。2. 蜂窩數(shù)獨(dú)的約束建模從棋盤到 CNF 的翻譯規(guī)則2.1 為什么不能直接套九宮格數(shù)獨(dú)的編碼普通數(shù)獨(dú)的 SAT 編碼很成熟9×9 個(gè)格子每個(gè)格子 9 個(gè)布爾變量一共 729 個(gè)變量加上「每格至少一個(gè)值」「每格至多一個(gè)值」「每行每列每宮 1-9 各出現(xiàn)一次」四類子句幾千條約束就能跑。但蜂窩數(shù)獨(dú)的幾何結(jié)構(gòu)不一樣如果你直接把蜂窩坐標(biāo)硬塞進(jìn) 9×9 的框架會(huì)出現(xiàn)兩個(gè)致命問題一是鄰居關(guān)系錯(cuò)位蜂窩的 6 鄰域在矩形網(wǎng)格里根本表達(dá)不出來(lái)二是區(qū)域劃分不規(guī)則蜂窩數(shù)獨(dú)的「宮」通常是 7 個(gè)或 6 個(gè)單元組成的蜂巢塊不是 3×3 方塊。我一開始偷懶用矩形近似結(jié)果求解器給出的解在蜂窩規(guī)則下全是錯(cuò)的血淚經(jīng)驗(yàn)就是棋盤拓?fù)浔仨毾冉?duì)再談 SAT 編碼。常見做法是先把蜂窩棋盤抽象成一張圖節(jié)點(diǎn)是格子邊是約束關(guān)系。蜂窩數(shù)獨(dú)的約束分三類——蜂窩環(huán)約束每個(gè)蜂窩單元周圍 6 個(gè)鄰居不能重復(fù)、斜線約束某些對(duì)角線上的數(shù)字不重復(fù)、區(qū)域約束每個(gè)蜂巢塊內(nèi) 1-N 各出現(xiàn)一次。把這三類約束分別轉(zhuǎn)成 CNF 子句才是正確路徑。2.2 變量定義與「至少一個(gè)、至多一個(gè)」子句生成假設(shè)蜂窩數(shù)獨(dú)有 N 個(gè)格子每個(gè)格子可填 1 到 MM 通常等于格子數(shù)或區(qū)域大小。定義布爾變量x[i][v]表示第 i 個(gè)格子填 v。變量總數(shù) N×M。下面這段 C 代碼負(fù)責(zé)生成基礎(chǔ)子句// N: 格子數(shù), M: 最大數(shù)字 // var(i, v) 返回變量編號(hào)從 1 開始SAT 求解器習(xí)慣 1-based int var(int i, int v) { return i * M v 1; } vectorvectorint clauses; // 約束1每個(gè)格子至少填一個(gè)數(shù)字 for (int i 0; i N; i) { vectorint c; for (int v 1; v M; v) c.push_back(var(i, v)); clauses.push_back(c); // 子句x[i][1] ∨ x[i][2] ∨ ... ∨ x[i][M] } // 約束2每個(gè)格子至多填一個(gè)數(shù)字兩兩互斥 for (int i 0; i N; i) { for (int v 1; v M; v) { for (int w v 1; w M; w) { clauses.push_back({-var(i, v), -var(i, w)}); } } }邏輯說(shuō)明約束 1 是「至少一個(gè)」寫成一個(gè)大析取子句約束 2 是「至多一個(gè)」用成對(duì)互斥的二元子句表達(dá)。參數(shù)上var(i, v)的編號(hào)方式?jīng)Q定了后面解析模型時(shí)的映射關(guān)系建議統(tǒng)一用i * M v 1避免 0 和 1 混淆。注意 M 的取值如果蜂窩數(shù)獨(dú)是 7 格區(qū)域M 就是 7如果是混合區(qū)域取最大區(qū)域大小。這里有個(gè)坑M 取大了變量數(shù)暴漲M 取小了約束表達(dá)不全我一般先統(tǒng)計(jì)所有區(qū)域的最大尺寸再定 M。2.3 蜂窩鄰居、斜線與區(qū)域約束的子句寫法有了基礎(chǔ)變量接下來(lái)把三類幾何約束翻譯成 CNF。蜂窩鄰居約束的意思是對(duì)每個(gè)格子 i 和它的每個(gè)鄰居 j如果 i 填了 v那么 j 不能填 v。寫成子句就是?x[i][v] ∨ ?x[j][v]。斜線約束同理只是鄰居集合換成斜線路徑上的格子。區(qū)域約束稍微復(fù)雜每個(gè)區(qū)域內(nèi)的格子數(shù)字 1-M 各出現(xiàn)一次等價(jià)于「區(qū)域內(nèi)每個(gè)數(shù)字至少出現(xiàn)一次」加上「區(qū)域內(nèi)同一數(shù)字至多出現(xiàn)一次」。// neighbors[i]: 格子 i 的蜂窩鄰居列表 // regions[r]: 第 r 個(gè)區(qū)域包含的格子列表 for (int i 0; i N; i) { for (int j : neighbors[i]) { if (j i) continue; // 避免重復(fù)加子句 for (int v 1; v M; v) { clauses.push_back({-var(i, v), -var(j, v)}); } } } // 區(qū)域約束每個(gè)數(shù)字在區(qū)域內(nèi)至少出現(xiàn)一次 for (auto reg : regions) { for (int v 1; v M; v) { vectorint c; for (int i : reg) c.push_back(var(i, v)); clauses.push_back(c); } // 至多一次區(qū)域內(nèi)任意兩格不能填同一數(shù)字 for (int a 0; a reg.size(); a) for (int b a 1; b reg.size(); b) for (int v 1; v M; v) clauses.push_back({-var(reg[a], v), -var(reg[b], v)}); }參數(shù)說(shuō)明neighbors和regions需要你根據(jù)蜂窩棋盤的幾何定義提前算好這是整個(gè)項(xiàng)目里最容易出錯(cuò)的地方。我建議單獨(dú)寫一個(gè)buildTopology()函數(shù)把蜂窩坐標(biāo)轉(zhuǎn)成鄰接表再用單元測(cè)試驗(yàn)證鄰居數(shù)量——標(biāo)準(zhǔn)蜂窩每個(gè)內(nèi)部格子應(yīng)該有 6 個(gè)鄰居邊界格子少于 6 個(gè)。如果發(fā)現(xiàn)某個(gè)格子鄰居數(shù)是 5 或 7說(shuō)明坐標(biāo)轉(zhuǎn)換寫錯(cuò)了。斜線約束的路徑也要顯式列出不要試圖用公式動(dòng)態(tài)生成蜂窩斜線在坐標(biāo)變換后往往不是直線。3. 用 C 接一個(gè) SAT 求解器DPLL 自研還是調(diào)庫(kù)3.1 自研 DPLL 的最小實(shí)現(xiàn)與適用邊界課程設(shè)計(jì)通常要求你體現(xiàn)「算法實(shí)現(xiàn)能力」所以很多同學(xué)會(huì)選擇自己寫一個(gè) DPLLDavis-Putnam-Logemann-Loveland求解器。DPLL 的核心是單元傳播 分支回溯代碼量不大兩百行左右能跑通。下面是一個(gè)最小骨架struct Solver { vectorvectorint clauses; vectorint assign; // 0未賦值, 1真, -1假 bool unitPropagate() { bool changed true; while (changed) { changed false; for (auto c : clauses) { int unassigned 0, last 0; bool satisfied false; for (int lit : c) { int v abs(lit); if (assign[v] 0) { unassigned; last lit; } else if ((lit 0 assign[v] 1) || (lit 0 assign[v] -1)) { satisfied true; break; } } if (satisfied) continue; if (unassigned 0) return false; // 沖突 if (unassigned 1) { int v abs(last); assign[v] (last 0) ? 1 : -1; changed true; } } } return true; } bool dpll() { if (!unitPropagate()) return false; int v pickBranchVar(); if (v -1) return true; // 全部賦值 for (int val : {1, -1}) { vectorint backup assign; assign[v] val; if (dpll()) return true; assign backup; } return false; } };邏輯說(shuō)明unitPropagate反復(fù)掃描子句遇到單元子句就強(qiáng)制賦值遇到空子句就報(bào)沖突。dpll選一個(gè)未賦值變量嘗試真和假兩個(gè)分支。參數(shù)上pickBranchVar的啟發(fā)式策略直接影響性能簡(jiǎn)單做法是選出現(xiàn)頻率最高的變量進(jìn)階可以用 VSIDS變量狀態(tài)獨(dú)立衰減和。邊界自研 DPLL 在蜂窩數(shù)獨(dú)這種幾千變量、上萬(wàn)子句的規(guī)模上如果不加優(yōu)化求解時(shí)間可能從幾秒到幾分鐘不等遇到難解實(shí)例會(huì)明顯變慢。如果你的課設(shè)允許調(diào)庫(kù)建議自研版只作為理解原理的對(duì)照正式求解用工業(yè)級(jí)庫(kù)。3.2 鏈接 MiniSat 或 CaDiCaL 的編譯配置工業(yè)級(jí) SAT 求解器里MiniSat 是經(jīng)典選擇代碼干凈、容易嵌入CaDiCaL 更新更快適合追求性能。以 MiniSat 為例你只需要把Solver.cc、Solver.h等核心文件加入工程然后調(diào)用它的接口#include minisat/core/Solver.h using namespace Minisat; bool solveWithMiniSat(vectorvectorint clauses, int numVars, vectorint model) { Solver solver; solver.newVars(numVars); for (auto c : clauses) { vecLit lits; for (int lit : c) lits.push(mkLit(abs(lit) - 1, lit 0)); solver.addClause(lits); } if (!solver.solve()) return false; model.resize(numVars); for (int i 0; i numVars; i) model[i] solver.modelValue(i) l_True ? 1 : -1; return true; }邏輯說(shuō)明MiniSat 的變量是 0-based所以mkLit(abs(lit)-1, lit0)做了編號(hào)轉(zhuǎn)換和符號(hào)處理。addClause逐條加入子句solve()返回可滿足性modelValue取出模型。參數(shù)上newVars必須在你加子句前調(diào)用數(shù)量等于你的變量總數(shù)。編譯時(shí)注意把 MiniSat 的源文件一起編譯或者鏈接靜態(tài)庫(kù)。常見翻車點(diǎn)是變量編號(hào)越界——如果你的var()函數(shù)返回 1-based而 MiniSat 要 0-based轉(zhuǎn)換時(shí)漏減 1 會(huì)直接崩潰或給出錯(cuò)誤模型。3.3 模型解析把 SAT 解還原成蜂窩棋盤求解器返回的是一組布爾賦值你需要把它翻譯回每個(gè)格子填什么數(shù)字。解析邏輯很簡(jiǎn)單對(duì)每個(gè)格子 i找到那個(gè)為真的x[i][v]v 就是答案。vectorint decodeModel(const vectorint model, int N, int M) { vectorint board(N, 0); for (int i 0; i N; i) { for (int v 1; v M; v) { int idx var(i, v) - 1; // 轉(zhuǎn) 0-based if (model[idx] 1) { board[i] v; break; } } } return board; }參數(shù)說(shuō)明model是求解器輸出的賦值數(shù)組N和M與編碼時(shí)一致。注意如果某個(gè)格子沒有任何變量為真說(shuō)明模型不完整或編碼有漏洞這時(shí)候要回頭檢查「至少一個(gè)」子句是否覆蓋了所有格子。我一般會(huì)在解析后加一個(gè)校驗(yàn)函數(shù)逐條檢查蜂窩鄰居、斜線、區(qū)域約束是否滿足確保求解器給的解真的合法而不是編碼錯(cuò)誤導(dǎo)致的假解。4. 避坑與排查蜂窩數(shù)獨(dú) SAT 編碼最容易翻車的 5 個(gè)點(diǎn)4.1 現(xiàn)象求解器返回 UNSAT但棋盤明明有解原因約束編碼過(guò)強(qiáng)把合法解排除了。最常見的是「至多一個(gè)」子句寫成了「恰好一個(gè)」的強(qiáng)約束或者區(qū)域約束里錯(cuò)誤地要求所有區(qū)域大小相同。蜂窩數(shù)獨(dú)的區(qū)域大小往往不一致如果你按最大區(qū)域生成「每個(gè)數(shù)字至少出現(xiàn)一次」的子句小區(qū)域會(huì)出現(xiàn)不可能滿足的析取。解決先用手工構(gòu)造的已知解反推編碼。拿一個(gè)填好的蜂窩棋盤逐條檢查每個(gè)子句是否被滿足。如果某個(gè)子句在已知解下為假說(shuō)明這條子句寫錯(cuò)了。重點(diǎn)檢查區(qū)域約束的循環(huán)邊界和鄰居列表是否包含了自己。4.2 現(xiàn)象求解時(shí)間從幾秒暴漲到幾分鐘原因變量和子句數(shù)量失控。蜂窩數(shù)獨(dú)如果 N49、M7變量數(shù)是 343子句數(shù)在幾千條正常應(yīng)該秒級(jí)。但如果你的鄰居約束用了三重循環(huán)且沒有去重子句數(shù)會(huì)翻幾倍。另一個(gè)常見原因是分支啟發(fā)式太差自研 DPLL 每次選第一個(gè)未賦值變量導(dǎo)致搜索樹巨大。解決統(tǒng)計(jì)子句總數(shù)和理論值對(duì)比。蜂窩鄰居約束的理論子句數(shù)是「邊數(shù) × M」斜線和區(qū)域類似。如果實(shí)際子句數(shù)遠(yuǎn)超理論值檢查是否有重復(fù)添加。自研求解器的話把pickBranchVar改成選出現(xiàn)頻率最高的變量或者直接換 MiniSat。4.3 現(xiàn)象編譯報(bào)錯(cuò)「undefined reference to Minisat::Solver」原因MiniSat 的源文件沒有加入編譯或者鏈接順序不對(duì)。MiniSat 不是 header-only 庫(kù)你需要把Solver.cc、SimpSolver.cc、System.cc等一起編譯。解決在 CMake 里顯式列出 MiniSat 源文件或者先編譯成靜態(tài)庫(kù)再鏈接。注意 MiniSat 依賴zlib如果報(bào)inflate相關(guān)錯(cuò)誤鏈接時(shí)加上-lz。我用 VS Code 配置 C/C 環(huán)境時(shí)tasks.json里的編譯命令要包含所有源文件不能只寫main.cpp。4.4 現(xiàn)象模型解析出來(lái)有格子是 0原因求解器返回的模型不完整或者你的變量編號(hào)映射在解析時(shí)用錯(cuò)了基數(shù)。常見的是編碼用 1-based、解析用 0-based導(dǎo)致偏移一位最后一個(gè)格子的變量越界。解決統(tǒng)一變量編號(hào)約定建議編碼和解析都用同一個(gè)var()函數(shù)。解析后加斷言board[i] ! 0如果觸發(fā)就打印該格子的所有變量賦值檢查是否有變量為真但沒被識(shí)別。4.5 現(xiàn)象換一個(gè)蜂窩棋盤布局就崩原因拓?fù)錁?gòu)建硬編碼了坐標(biāo)沒有做成數(shù)據(jù)驅(qū)動(dòng)。蜂窩數(shù)獨(dú)的棋盤布局可能變化如果你的neighbors和regions是寫死的數(shù)組換布局就得改代碼。解決把棋盤布局抽成配置文件或初始化函數(shù)用坐標(biāo)列表生成鄰接表和區(qū)域列表。我一般會(huì)寫一個(gè)loadBoard()函數(shù)從文本文件讀入格子坐標(biāo)和區(qū)域劃分然后自動(dòng)計(jì)算鄰居關(guān)系。這樣換布局只需要換數(shù)據(jù)文件代碼不動(dòng)。5. 實(shí)驗(yàn)報(bào)告與文檔說(shuō)明怎么寫才不像流水賬5.1 實(shí)驗(yàn)報(bào)告的結(jié)構(gòu)從問題定義到性能對(duì)比課程設(shè)計(jì)的實(shí)驗(yàn)報(bào)告不是代碼注釋的堆砌評(píng)審老師想看的是你的思考過(guò)程。我建議按「問題定義 → 建模選擇 → 編碼實(shí)現(xiàn) → 實(shí)驗(yàn)設(shè)計(jì) → 結(jié)果分析」五段寫。問題定義里說(shuō)清蜂窩數(shù)獨(dú)和普通數(shù)獨(dú)的區(qū)別建模選擇里解釋為什么用 SAT 而不是回溯編碼實(shí)現(xiàn)里貼關(guān)鍵代碼片段并說(shuō)明參數(shù)實(shí)驗(yàn)設(shè)計(jì)里列出你測(cè)試了哪些棋盤、用了哪些求解器結(jié)果分析里給對(duì)比表格。測(cè)試用例格子數(shù)變量數(shù)子句數(shù)自研 DPLL 耗時(shí)MiniSat 耗時(shí)小型蜂窩19133約 12000.8s0.02s中型蜂窩37259約 350012s0.1s大型蜂窩61427約 8000超時(shí)0.5s這張表是我復(fù)現(xiàn)時(shí)的真實(shí)量級(jí)你可以用自己的數(shù)據(jù)替換。關(guān)鍵是要有對(duì)比體現(xiàn)你理解不同求解策略的邊界。5.2 文檔說(shuō)明的寫法讓評(píng)審三分鐘看懂你的設(shè)計(jì)文檔說(shuō)明和實(shí)驗(yàn)報(bào)告不同它更像用戶手冊(cè)加設(shè)計(jì)文檔。開頭一段說(shuō)清項(xiàng)目做什么、怎么編譯、怎么運(yùn)行。然后分模塊講拓?fù)錁?gòu)建模塊、CNF 編碼模塊、求解器接口模塊、模型解析模塊。每個(gè)模塊給出輸入輸出和關(guān)鍵函數(shù)簽名。最后附一個(gè)快速開始示例讓評(píng)審能直接跑起來(lái)。# 編譯示例假設(shè)使用 CMake mkdir build cd build cmake .. -DCMAKE_BUILD_TYPERelease make -j4 # 運(yùn)行求解器輸入棋盤文件 ./honeycomb_sat ../boards/medium.txt參數(shù)說(shuō)明-DCMAKE_BUILD_TYPERelease開啟優(yōu)化SAT 求解對(duì)性能敏感Debug 模式可能慢十倍。boards/medium.txt是棋盤布局文件格式建議用「格子編號(hào) 坐標(biāo) 區(qū)域編號(hào)」每行一條。運(yùn)行后輸出求解結(jié)果和耗時(shí)方便你填實(shí)驗(yàn)報(bào)告。5.3 性能驗(yàn)證怎么證明你的編碼沒有冗余驗(yàn)證編碼質(zhì)量的一個(gè)實(shí)用技巧是統(tǒng)計(jì)子句長(zhǎng)度分布。健康的 CNF 編碼里大部分子句是二元或三元長(zhǎng)子句只出現(xiàn)在「至少一個(gè)」約束里。如果你的子句長(zhǎng)度普遍很長(zhǎng)說(shuō)明編碼方式有問題可能是把「至多一個(gè)」寫成了大子句而不是兩兩互斥。mapint,int lenDist; for (auto c : clauses) lenDist[c.size()]; for (auto [len, cnt] : lenDist) cout 長(zhǎng)度 len 的子句: cnt 條\n;邏輯說(shuō)明這段代碼統(tǒng)計(jì)子句長(zhǎng)度分布。正常情況下長(zhǎng)度 2 的子句應(yīng)該占大多數(shù)互斥約束長(zhǎng)度等于 M 的子句數(shù)量等于格子數(shù)至少一個(gè)約束。如果長(zhǎng)度 3 以上的子句異常多檢查是否有重復(fù)添加或錯(cuò)誤合并。參數(shù)上不需要額外配置直接跑在編碼完成后即可。6. 進(jìn)階技巧用增量求解和對(duì)稱破缺再壓一壓耗時(shí)6.1 增量求解換棋盤不重建求解器如果你的程序需要連續(xù)求解多個(gè)蜂窩數(shù)獨(dú)每次都新建 MiniSat 實(shí)例會(huì)浪費(fèi)大量時(shí)間在解析和預(yù)處理上。MiniSat 支持增量求解你可以保留求解器實(shí)例只添加或刪除子句。對(duì)于棋盤布局相同、只有預(yù)填數(shù)字不同的情況基礎(chǔ)約束鄰居、區(qū)域可以只加一次每次求解只加預(yù)填數(shù)字對(duì)應(yīng)的單元子句。Solver solver; solver.newVars(numVars); // 一次性加入基礎(chǔ)約束 for (auto c : baseClauses) addClause(solver, c); // 每次求解前加入預(yù)填數(shù)字 for (auto [cell, val] : givens) { vecLit unit; unit.push(mkLit(var(cell, val) - 1, false)); solver.addClause(unit); } if (solver.solve()) { /* 解析模型 */ } // 清除本次預(yù)填保留基礎(chǔ)約束MiniSat 需要用 solveLimited 或重建參數(shù)說(shuō)明增量求解的關(guān)鍵是區(qū)分「永久子句」和「臨時(shí)子句」。MiniSat 原生不直接支持刪除子句但你可以通過(guò)Solver::addClause配合Solver::solve多次調(diào)用實(shí)現(xiàn)近似增量。如果刪除需求頻繁考慮用 CaDiCaL 或 Glucose它們對(duì)增量支持更好。注意每次求解后模型會(huì)變解析前要重新讀取。6.2 對(duì)稱破缺蜂窩棋盤的旋轉(zhuǎn)和鏡像冗余蜂窩棋盤通常有旋轉(zhuǎn)對(duì)稱性比如六邊形蜂窩旋轉(zhuǎn) 60 度后約束結(jié)構(gòu)不變。這意味著如果存在一個(gè)解它的旋轉(zhuǎn)版本也是解求解器會(huì)在對(duì)稱分支上浪費(fèi)大量時(shí)間。對(duì)稱破缺的思路是人為加入約束禁止某些對(duì)稱等價(jià)解。最簡(jiǎn)單的做法是固定中心格子的值或者限制第一個(gè)格子的取值范圍。// 對(duì)稱破缺固定第一個(gè)格子的值不超過(guò) M/2 vectorint symClause; for (int v M/2 1; v M; v) symClause.push_back(-var(0, v)); clauses.push_back(symClause);邏輯說(shuō)明這條子句禁止第一個(gè)格子取大于 M/2 的值把解空間砍掉一半。參數(shù)上M/2取整即可。注意對(duì)稱破缺只在你不需要枚舉所有解時(shí)使用如果課設(shè)要求輸出所有解不能加這條約束。我一般會(huì)在實(shí)驗(yàn)報(bào)告里分別跑「帶對(duì)稱破缺」和「不帶對(duì)稱破缺」兩組對(duì)比耗時(shí)體現(xiàn)優(yōu)化效果。6.3 一個(gè)具體技巧用預(yù)填數(shù)字做單元傳播加速蜂窩數(shù)獨(dú)通常會(huì)給一些預(yù)填數(shù)字。這些數(shù)字在 SAT 編碼里就是單元子句求解器會(huì)在單元傳播階段直接賦值。但如果你在編碼階段就把預(yù)填數(shù)字對(duì)應(yīng)的變量固定可以省去求解器的部分工作。更進(jìn)一步的技巧是在生成「至少一個(gè)」子句時(shí)如果某個(gè)格子已有預(yù)填直接跳過(guò)該子句只保留預(yù)填對(duì)應(yīng)的單元子句。for (int i 0; i N; i) { if (givens.count(i)) { clauses.push_back({var(i, givens[i])}); // 單元子句 continue; // 跳過(guò)至少一個(gè)子句 } vectorint c; for (int v 1; v M; v) c.push_back(var(i, v)); clauses.push_back(c); }邏輯說(shuō)明預(yù)填格子不需要「至少一個(gè)」約束因?yàn)閱卧泳湟呀?jīng)強(qiáng)制了它的值。這樣能減少子句數(shù)量加快單元傳播。參數(shù)上givens是一個(gè)mapint,int鍵是格子編號(hào)值是預(yù)填數(shù)字。注意預(yù)填數(shù)字必須合法否則會(huì)直接導(dǎo)致 UNSAT這時(shí)候要檢查輸入棋盤是否本身無(wú)解。這套方案我從建模到跑通大概花了三天最大的教訓(xùn)是拓?fù)錁?gòu)建的錯(cuò)誤會(huì)偽裝成求解器的問題。你以為是 SAT 編碼不行其實(shí)是鄰居列表多了一個(gè)格子。所以每次改完拓?fù)湎扔眯∫?guī)模棋盤手工驗(yàn)證再上求解器。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91五月天| 欧美区亚洲区偷拍区| 一起草精品人妻| 9997se| 亚洲成人免费在线| 久久HD| 日本 色 导航| 日韩欧美女求操每天更新| 人妻另类| 熟女网站最新| 国产伦精品一区二区三区视频女| 欧美国产欧美在线观看| 少妇久久| 欧美极品| 999熟女精品| 人妻天天操天天爽视频免费| 色99视频| 亚洲Av无码成人精品国产| 极品另类| 人人妻人人澡人人爽人人精品浪潮| 久久久久78| 国产欧美美女免费观看视频| 国产精品点击进入在线影院高清 | 麻豆精品.欧美精品.日韩精品.| 不卡九肏| 日韩美女久久一区二区三区| 久久香蕉影院| 久久日韩毛| AAA久久| av天堂5| 免费在线黄片视频| 超碰碰97| 欧美中字二区| 少妇精品久久久| 久久一级无码精品毛片6| 国产黄片精品在线| 亚洲制服aⅴ中文字幕| 精品国产Av无码久久久伦古装| 91天堂丝袜美腿| 久久精品99| 日韩精品怡红院| 蜜臀人妻少妇久久在线观看| 超碰97在线 欧美 国产| yazhousetuoumei| 深夜啪啪啪视频免费| 电影69乱码96| 国产农村妇女精品一| 嗯嗯啊操我| 亚洲最大91网| 亚洲码和欧洲精品激情系列| 欧美三级免费伊人| 无码操逼天堂| 亚洲天堂一区二区| 3PAV乱伦视频| 一级久久久久久久久久久| 国内毛片婷婷六月色| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 在线日韩精品一区二区三区| 欧美日韩另类在线| 亚洲欧洲国产综合av| 国产福利影视| 熟女日韩| 精品中文一区二区| www狠狠| 色播五月丁香| 国产精品亚洲四五区在线观看| 久无码| SS久久| 天天操熟妇| 天干天干天干天天做| 床戏久久久av一区二区麻豆| 五月天婷婷在线看 | 毛片17S| 久久97资源 网| 四虎884a| 97精品全部| 黑人综合网| 色综合久久av| 国产精品色哟哟| 九九九只有精品| 天美传媒婬乱| 91精品人妻电影| 视频二区美腿丝袜制服人妻欧美| 国产精品视频播放| 深夜国产福利| 日韩在线观看字幕精品| 久久99精品九九久久久婷婷| 嗯嗯啊啊操我| 精品性爱一区二区| 一本久久精品中文字| 精品国产a∨一区天美传媒| 色综合一本| 日韩欧美被操黄免费观看| 一本大道久| 久久透逼视频| 久久久亚洲精品电影免费看| 殴美色网| 韩国一级婬片A片AAAAA| 亚洲中文sv| 国产精品久久久久久久黄无码 | 2020中文字幕在线观看| 久久99视频| 久热久操| Sekablack无码一区| 97超级久久强资源| 91欧美网| 99热这里只有精品9| 北条麻妃性愛视频| 草草影院最新网址| 国产精品九九| 国产成人+综合亚洲+天堂| 日本男人插女人的逼黄色| 久久久四区| www网站黄| 97日视频| 51久久夜色精品国产麻豆| 麻豆人妻精品一区二区| 婷婷丁香激情| 伊色综合天堂色97| 亚洲成人一区二区精品| 高潮的A片激情扒开一区| 人妻少妇色综合| 欧美精品,四区。五区| 欧美片第一页| 97高清啪啪| 国产伦乱91| 秋霞免费无码视频日韩A片| 婷婷综合五月| 国产精品69久久久久久久| 色色色色日本| 黑人精品一区二区在线播放| 不卡人妻少妇精品毛片一区23区视频| 久久久涩| 成人资源中文字幕在线观看天天| 亚洲综合欧美| 二对二中文字幕。| 久操网址| 中文字幕日韩情色| www.色婷婷| AV色女综合| 色99色| 亚洲自拍97| 东京热激情视频一二三区| 大香蕉中文在线| 九九九久久久| 国产噜噜噜噜噜久久久久久久久| 精品亚洲黄色片 国产精品导航一区二区| 91视频成人福利网站在线一区 | 亚洲 在线| 色月天AV导航| 韩日无码在线观看| 亚洲精品自拍| 东北操逼| 青青操97| 天天视频黄网站| 色97国产69香蕉| 3571色综合一区二区二区| 亚洲国产91精品一区二区久久| 人人爽人人精品乱人伦AV| 亚洲精品一区二区三区在线播放| 国内毛片四区| 性色中出| 大香蕉丝袜一级片| www熟女乱伦com| 欧美亚洲涩涩| www.夜夜| 成人亚欧免费视频| 日韩无码黄色片| 91在线欧美| 久久99深爱久久99精品| 天美一二三在线观看Av| 欧美性生活综合| 91在线视频国产网站| 天操老女人| 97这里只有精品| 麻豆 亚洲 97| 啊啊好多水| 国产亚洲精品第一最新| 日韩性爱视频在线免费观看| 美欧色综合| 久久一本大香蕉 | 欧美国产有色电影| 玖玖爱综合| 婷婷久草一区二区三区| 国产剧情AV不卡在线观看| 综合久久少妇中文字幕| 色欧美综合| 激情小说亚洲视频| 和协影院中文字幕三区| 91新在线欧美| 97操97色| 免费视频在线观看啊啊啊啊啊| 色官网色综合| 黄色视频60分钟| 精品人妻一区二区免费蜜桃视频| 日本大香蕉综合网红本杳社区| 98福利在线视频| 大香蕉欧美伊| 人人超碰在线观看黄| 人妻天天夜夜爽一区二区| a在线视频免费观看| 人人贴人人摸| 日人妻视频91| 俺去俺来也在线www| 国产熟女免费观看久久| 美国aaaaa一级黄片| 亚洲国产精品9999在线观看| 日欧操屄| 国内偷自视频区视频综合| 福利视频香蕉免费一区二区在线| 26uuu最新| 亚洲激情视频| 91情色| 欧美综合另类| 欧美亚洲中文| 超碰在线欧美性爱激情| 老熟女搡BBBB搡BBBB视频| 国产乱伦视频污| 天天综合色电影| 欧洲免费一区二| 国产少妇与亚洲av| 禁片 高清 在线观看视频网站| 久久曰曰| 一区| 大香蕉琪琪日本女优不卡| 欧美亚洲se91| 精品久久久久成人码免| 亚洲图片小说欧洲| 亚洲?V高清一区二区三区尤物| 青青草国产欧美非洲黑人| 97干色| 国内毛片热久久思思热| 草莓精品视频| 日韩免费人妻色情网站| 麻豆AV96熟妇人妻| 熟妇激情| 国产99热| 做爱A级亚欧| 久久久久国产一区二| 去干网最新版| 色九九九| 农村少妇久久久久久久| 久久av一级av少妇av高潮| 国产精品一区二区 尿失禁| 久99热| 天天弄欧美| 欧亚日韩综合精品国产| 97超碰久久| Av手机版天堂网| 日本午夜精品理论片A级APP发布| 极品白嫩福利在线| 日韩欧美麻豆 | 色九久| 大香蕉一区二区在线观看.| 在线观看亚洲专区| 亚洲精品久久久久久久久豆丁网| 欧美最大综合网| 蜜臀久久久99久久久久 | 大香蕉手机在线视频| 精品久久久久久久久久久久| 欧洲精品一级二级精品综合视频综合| 亚洲成人福利电影免费| 99re在线观看| 青娱乐休闲视频在线观看| 久久精品国产亚洲AV片多多| 国产不卡精品91| 99re在线视频国产| 高清在线不卡一区二区 视频| 色婷久久| 天天综合网合集91| 国产日韩手机视频在线| 婷婷五月丁香五月| 久久久91福利姬| Sekablack无码一区| 久9热| 激情综合网一盗摄| 日韩欧美tv一区二区在线观看| 色婷婷电影| 国产免费一区| 欧美精品日韩久久久九| 久久精品免视看国产成人﹣蜜臀av一区. 久久精品免视看国产成人,蜜臀av一区 | 女优视频第10页| 国产日韩欧美| 99精品久久久久久久婷婷| 伊人五月天青青草婷婷| 久久在肏| 色色五月婷婷| 91美女视频| 在线啊v一区| 久久亚洲色图中文字幕| 影视综合无码少妇| 亚洲熟久久| 无码免费在线观看黄色片| 青青网三级视频| 国产又粗又长的视频| 伊人久久综合影院| 美女丝袜激情小说| 999亚洲国产视频| 人人噜夜夜操| 女人被添高潮免费视频| 33044男人的天堂深夜备| 亚洲砖码砖专无区2023| 精品女同一区| 国产原创剧情在线丝袜| 91色欧美| 九一综合精品视品av| 亚洲一区二区三区在线激情| 久久手机视直播| 白丝一区| 91劲爆| 立川理惠无码一区二区| 欧美综合天堂| 亚洲,欧美,春色,另类 | 精品国产国产AV| 亚洲一区二区三区播放在线| 香蕉大久久久| 中文字幕成人| 久久伊人最新网址视频| 啊啊啊好舒服好爽啊啊啊视频| 免费一级性爱久久| 超碰综合97在线| 欧美日韩99| 天天综合91| 四虎免费看黄| 99操视频| 久久中文字幕一区不卡| 欧美日韩人妻精品系列一区二区三区| 日韩97视频!在线| jizz啪啪| 欧美亚洲高清晰| 超碰99在线观看| 久久精品国产精品一区| 国产成年精品高清在线观看91| 欧美激情总合网| 久久精品国产亚洲AV清纯| 中文一区二区婷婷视频| 可以在线观看AV的网站| 色香AV| 久久久久亚洲精品| 亚洲欧美国产日本一区二区三区| 97无码视频在线播放| 亚洲Av噜噜一区二区三区妖精| 日韩人妻制服丝袜av| 大香蕉视频啪啪啪啪| 九九热免费在线国产视频伊人五月| 另类TS人妖一区二区三区| 精品少妇人妻一区二区三区| 芊芊操逼视频无码| 日本3级一区二区免费| 久久99精品九九久久久婷婷| 欧洲在线性爱视频| 久久这里| 日本一区二区电影网站| 久久国内| 九九精品99| 蜜臀Av一区二区三区| 久久9 9 9精品| 老熟女搡BBBB搡BBBB视频| 久艹免费| 欧美亚州色的图| 性感女人网页在线观看视频| 超碰在线人妻| 99精品视频在线观看免费| 日韩熟女精一区二区三区不卡| 国产亚洲精品美女| 日韩中字av一区| 婷婷丁香五月激情啪啪| 久久久久亚洲AV无码专区少妇| 国产一线二线三线av| 丝袜亚洲91| 青娱乐 成人娱乐在线| 久久色一区| av婷婷色婷婷色六月| 国产亚洲精品一区二区三区| 女优大全 - 91n| 操死我了啊啊啊| 激情终合网| 日韩内射视频| 大吊色| 人妻AV 中文字幕的| 丁香婷婷久久| 色五月大香蕉| 人妻熟女午夜精品在线| 激情丁香五月婷婷| 日本一级黄色电影| 国产久久久久久久久一区二区| 久久久久久国产精品免费网站| 精品久久无码午夜福利| 一道α片欧美| 亚洲va有码在线天堂| 99久久精品欧美国产| 亚洲色图欧美一区二区不卡| 婷婷爽人人婷婷爽视频| 色综合av综合久久| 高清无码久操视频| 天天激情综合站| 国产丝袜美女在线一区| 国产乱伦亚洲色图高清无码| 国产AAAAAABBBBB| 色波多| 91综合网| 亚洲色欲天天天堂色欲网女| 再深点灬舒服灬太大了添视频| 超碰 另类 欧美| 熟女丰满人妻一区| 久久天天躁日日躁狠狠躁 | 欧美色日| 日韩欧美中文字亚洲慕| 97国产|免费| 亚洲精品欧洲色| 91色狼| 国产精品人妻一区二区| 狼狼色丁香久久婷婷综合五月| 国产一在线观看| 蜜乳AV一区二区三区四| 91久热| 欧美色色色| 九九热免费国产视频婷婷伊人五月 | 欧美日韩第一页| 99∨VTV| 欧美亚男人的天堂| 成年人免费观看网站| 黑人性欧美| 国产无码精品久久久久久| 国产操逼视频在线观看| 国产亚洲综合欧美一区| 污到发麻的视频 国产| 日韩电影天堂视频二区三区| 婷婷精品久久av影视| 超碰在线人人射| 色就色综合| 色欲久久综合| 躁躁日曰躁2020| 亚洲色图欧美色图在线播放| 人人性爱视频免费| 丁香五月婷婷啪啪| 久久美国毛片| 色欲Av人妻精品一区二| 久久五月综合| 人妻免费观看| 夜夜骑夜夜操| 五月天婷婷久久| 亚洲激情色片| 天天视频网站黄| 人人色人人操在线| 亚洲日韩久久精品一区| 日本国产亚洲一区在线观看| 免费观看的av| 色色青青久久| 日韩性爱毛片操骚逼| 熟女精品一区二区三区| 欧美最大综合网| 97超碰碰碰| 伊人四虎综合| 国产精品激情久久久久久久| 日本蜜桃| 欧美 精品国产制服第一页| 久久女婷| 97超碰色屌| 精品美女人人干| 99久久久无码精品国产人| 狠狠综合网| 日日AAvv| 精品区国产区一区二区三区| 好爽免费视频,| 91深夜夜| 九九九精品色乱九九九| 岛国网址国产 | 国产AAAAAABBBBB| 蜜臀精品1区2区| 人妻铁牛TV| 啪啪视频mP4| 国产三级片在线观看| 思思热在线视频精品| 青青草一区二区高清无码视频| 国产 v乱码一区二| 精品人妻一区二区三区不卡断 | 国精品一区二区三| 亚洲巨爆乳一区二区三区四季网| 欧美日韩人人精品| 蜜乳成人AV| 闷骚老熟女15P| 成人av福利在线观看| 中文字日本乱码| 84YTCOM性无码| 久久久久久久唑| 久久久精品日本一道| 爱爱动态60秒| 91jk色拍| 国产AV激情无码久久无码| 91无码人妻| 国产情侣自拍在线播放| 欧美+日产+中文| 一区二区三区四区五区高清无码永久视频 | 亚洲天堂电影网99999| 久久婷婷热| 超碰97久久| 亚州色图欧美| 青草视频在线看看看看看看看看看| 国产美女自拍视频| 亚洲不卡不卡中文字幕不卡| 日本免费中文字幕在线| 亚洲,欧美,综合网| 开心六月色| 青娱乐国产精品| 亚洲天堂另类| 97国产色图| 99激情视频| 中文字幕日韩人妻视频| 亚洲美腿丝袜香蕉影视欧美成人| 96精品在线| 日韩在线一区二区| 婷婷五月天激情四射| 日韩免费三级黄片电影| 中文欧丝袜诱惑| 日韩有码免费视频| 美女尤物人人操| 色97干| 成人熟女区| 伊人99热| 午夜影美女日鸡鸡天天视频国产| 99re9| 91劲爆| 人妻美腿丝袜制服诱惑综合天堂-| 久久av一级av少妇av高潮| 欧美翘臀视频网站一区二区三区| 中文字幕人乱码中文字的预防方法| 熟女乱伦二区| 乱伦AVxx| 天天弄天天操| 亚洲综合影院| 欧美劲爆第一页| 欧美黑人91| 欧美日韩大陆黑人少妇99| 99免费在线视频| 亚洲欧美国产成人综合不卡| 99re免费视频精品全部| 精品91| 99热这里都是精品| nuu12国产麻豆精品| 九九久久99| 日本免费一区二| 亚洲激情av| 亚洲欧美日韩精品久久久一区二区| 国产精品精品系列在线观看| 久草免费在线视频| 国产9熟妇视频网站| 91无摭挡| av草草在线电影| 日韩不卡网操逼中文字幕日韩| 99国内精品| 在线观看一卡二卡| julia高潮后不停追击中出| 最新国产精品久久精品| 色综合久久88色综合久久天天| 久久久久久电影| 国产美女在线精品免费看| 色欧洲| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 人妻熟女一区二区三区在线| 不卡九肏| 超碰97色色| 超碰中文字幕人妻草一区| av操操不卡| 免費人妻夜夜爽天天爽爽一区| caopeng97| 国产a级精品| 亚洲自拍欧美国产首页网曝| 色婷婷综合久久久久中文一区二区| 精品熟女一区=区三区| 国产精品老熟女一区二区| 混色激情av| 综合激情97| 天天干天天日天天射黄色片| 日韩操呦呦影院在线观看| 91天天c| 色香91| 天堂成人网| 香蕉人欧美综合| 女人精品内射国产99| 久久精品国产欧美日韩亚洲欧美日韩中文久久国产一区 | 久久一本大香蕉| 超碰一区二区| 999热这里只有精品| 女人综合网| 色欲三区| 天堂8在线新版官网| 国产成人网| 亚洲人在线| 久久久久久久久久久久欧美日| 亚洲中文字幕久久无码精品| 欧美精品97| 中国zzijzzijzzwww精品| 日韩黄色成人性爱| 春色校园综合网| 亚洲色图第四色| 日日操夜夜操天天操免费观看麻豆| 青青在线视频日韩欧美| 日韩欧美综合激情| 九色 人妻 大香蕉| 亚洲综合贴图91| 一二三区精品视频| 免费的很黄很污的全部视频| 99久久久| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 清清草影| 极品少妇久久久| 日韩欧美麻豆大片| 亚州色图片在线色| 男人的天堂2019| 国产精品香蕉热久久新品| 大奶啊啊好爽| 国内成人圈中文字幕无码视频| 97干色| 国产精品成人蜜臀AV在线| 久妇网| 欧美综合狠| 久久透逼视频| 九色97| 91精品91久久久久77777| 久久精品福利影院| 一区二区久久天天干狠狠| 91美女视频电影| 26uuu国产亚洲综合| 人妻久久久| 精品一区99999| 日韩操逼HD| 口爆欧美91| 久久久97| 婷婷在线视频| 国产精品97超碰| 综合 欧美 亚洲 日本| 91九久| 天天亚洲| 精品女人999| 亚洲成成熟女人综合一区二区| 国产99精品一区二区三区免费| 欧美综合97www| 欧美激情高清性猛交| 999国产精品999| 少妇人妻激情四射| 密乳无码| 欧美玖玖爱免费玖玖| 国产精品毛片?v一区二区三区| 青青草在线成人视频| 密臀在线一区尤物| 六月婷婷综合| 成人性交午夜免费片| 在线不卡视频| 黄页av| 女人爽到高潮久久久| 色97干| 91爱综合| 超碰97人人cao| 亚洲视频,小说| 亚洲精品一区二区精品| 99精品伊人| 91足交| 99re公开精品免费视频| 日韩精品大香蕉伊人在线| 精品中文字幕一区二区| 中文字幕一区二区三四五区日日骚| 国产日韩精品无码去免费专区国产| 精品97精品97| 91成人在线免费视频| 丰满少妇精品一区二区| 9久热| 国产强奸无码乱伦| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 97丝袜亚洲在线播放| 午夜无码精品免费看性色| 欧美色图小说综合| 国产丝袜视频| 国产成人精品必看| 久久久久深夜无码| 曰韩精品九九无码| 高清无码久操视频| 后入式999| 日韩精品 资源| 手机午夜电影神马久久| 粉嫩av一区二区三区四季| 国产97色在线| 在线视频 亚洲精品| 欧美性爱网97| 婷婷亚洲天堂| 无码人妻精品一区二区中文| 精品二区久久| av午夜玫瑰| 色爱国产| 亚洲综合另类小说色区亚洲成av人片在www| 国产偷人妻精品一区二区在线| 91精品大奶人妻| 日韩免费簧片| 中文字幕免费在线观看| 精品无码一区二区| 探花激情视频| se01国产在线视频| 东北女人高潮视频| 狠狠躁天天躁日日躁| 人人爱操| 夜间福利片1000无码| 精品999一区二区| 九九九九九精品十六| 99精彩视频| 性色av蜜臀av色欲aV| 清纯唯美亚洲综合| 高清孕妇孕交 交孕妇| 久久精品视频28| 开心五月深爱五月| 国产一级作爱毛片| 操我啊啊啊啊啊| 色婷婷狠狠18禁| 国产专区第一页| 亚洲国产综合视频| 99热婷婷一区二区三| 中出后入| 国产日韩人人| 亚洲中文人妻色| 大香蕉免费中文| 久久免费精品视频免一| 久久亚州精品成人Av无| 91亚洲在线| 天天狂操夜夜狂日| 久久亚州大香蕉| 91N综合在线| 东京热一区二区三区四区五区六区| 久操大香蕉| 人人妻人人狠人人| 亚洲国产尤物yw在线观看| 婷婷在线视频在线观看| 国产高清成人免费视频| 色欲久久99国产精品久久久久久| 2020中文字幕在线| 青青草久久| 欧美在线视频播放| 色网在线| 日本三级韩国三级美三级91| 97超视频在线观看| 伊人久久大香线蕉亚洲五月天,青草青草欧美日本一区二区,欧美日产欧美日产国产 | 九九九精品一区二区无码| 欧美精品双插| 中 文字幕一区二区三四 五 区日 日 骚| 91人人爽人人爽| 97久精品| 亚洲欧美另类少妇精品| 自拍丝袜美腿人妻| 亚洲天堂第一页| 一区二区三区成人| 青青草无码视频| 男人成人黄色视频在线观看免费下载| 色www精品视频在线观看| 老司机午夜福利视频一区二区| 97超碰免费人人性爱| 超碰久久草| 亚洲国产福利视频| 亚春色色| 搡老女人老91二区| 黑人精品XXX一区一二区| 国产精品久久久久久照片| 无码高清国产AV| 97资源站久久| 日韩大香蕉AV影片| 欧美中出| 日韩精品在线观看观看| 伊人黄色视频免费观看| 狠狠干狠狠色| 啊嗯好大视频在线观看| 欧美日韩大陆黑人少妇99| 人澡逼| 91国模| 1人人看人人摸人人操| 新婚人妻扶着粗大强行坐下| 亚洲乱熟女一区二区三区大香蕉| 嗯嗯啊啊视频在线看| 女同性恋一区二区三区精品视频| 久久精品夜色国产亚洲AV| 欧美色图在线视频少妇| 九九九九九九九九九国产精品 | 亚洲欧洲国产综合av| 久久精品小视频| 91处女视频在线观看| 超碰在线综合97| 婷婷婷婷婷婷久久久久| 两女互慰AV高潮喷水在线观看| 男人天堂日日夜夜| 91久精品| 欧美日韩另类字幕中文| 中文字幕AV中出| 人妻干天天| 午夜丁香婷婷| 欧美人妻中出| 中文字幕乱亚洲美女精品一区| 操www| 女优视频第10页| 在线亚洲丝袜视频网站| 一起草在线视频| 家庭乱伦网站国产| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 98福利在线视频| 国产精品熟女一区二区三区| 欧美大香蕉同搞| 欧美中文字幕男人天堂久久精品 | 亚欧性爱ab| 91成人18| 丰满的三级少妇欧美久久久| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 动漫av中文| 国产精品午夜AV完会免费| 人妻在线视频| 97公开久久| 黄色免费一级在线毛片| 99久久综合| 久9综合在线| 国产人伦a片信息免费片| 台欧久久精品视频| 夜夜性| 久久久久婷婷| 亚洲国产精品久久久久婷婷老年| 人人操人人色人人摸| 啊啊啊不要好疼视频| 久热精品在线| ?亚洲伊人伊成久久人综合网| baiduhicn.com。| 岛国在线国产| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 欧亚综合一卡二卡中文字幕| 99超碰网| 人成午夜免费大片| 亚洲情色综合网| 91爆操视频| 亚洲超碰综合网| 国产av又色又爽又黄| 免费网站观看www在线观| 看日韩黄片| 欧美少妇一区二区三区| 精品九九| 国产精品乱码久久久久久久久久久久| 激情小说亚洲| 日本不卡卡一区| 在线αⅴ| 妇人噜噜| 最新日产中文在线麻豆| 日本三级韩国三级美三级91| 1769一区二区| 在线观看啊啊啊啊啊| 岛国精品视频在线观看| 午夜经典| 蜜臀久久99精品久久久久久婷婷 | 一本一道vs波多野结衣| 一起草AV| 亚洲强奸乱伦影视网| 日日夜夜国产综合| AV和黑人在线播放| 嗯嗯啊啊的视频| 自拍偷拍 日韩无码| 一本色道久久综合狠狠操| 一区二区娱乐网站| 97天天| 亚洲伊人久久精品狠狠在线| 亚洲春色欧美激情自拍| 人妻熟女一区二区三区在线| 黄在线| 传媒在线观看一区二区三区| 日日日日日| 人人操 欧美| 久久综合av| 九九久久综合| 97精品免费视频网站| 九九玖玖精品| 亚洲国产精品无码AV在线| 丝袜美腿91| 亚洲天堂性爱| 逼逼逼逼操操操操操操操操操午夜剧场 | www.操| 亚洲情色中文字幕一区| 大香蕉日韩| 欧美亚洲日韩16色| 丁香婷婷啪啪| 五月天我淫我色av| 舔人妻中文免费视频| 亚洲 欧美 中文 日韩超碰| 久久久久久久九九九九九九| 黄站在线免费观看| 热天堂一区二区| 92午夜免费福利视频| 青青草福利视频| 欧美性天天影院| 美女超碰978| 播播亚洲小说亚洲| 亚洲欧洲成人在线电影| 伊人96在线| 久久久久无码| 5月婷婷6月六月丁香| 亚洲日韩精品久久久久一区壹牛| 少妇熟女视频一区二区三区| 射丝袜高跟鞋99| 十八禁啪啦拍视频无遮挡| 亚洲男人综合| 欧美激情视频一区二区| 亚洲drav色图| 欧美色图私拍91| 天天日天天舔天天喷天天射| 精品人妻av在线播放| 欧美精品三级黄片| 91久久婷婷| 9999久久久久| 在线亚洲精品久久久| 日本人体九九九九九九| 中文字幕一区二区三区视频播放| 午夜操逼不卡| av影片在线观看不卡| 国产精品伦理| 操老熟女AV| 综合欧美日韩在线| 久久綜合很很很| 青青草密桃在线播放| 五月婷婷六月天| 人人看人人摸人人色| 青娱乐欧美激情一区二区 | 日韩欧无码一区二区三区免费不卡| 啊啊啊男女| 蜜臀av网址| 亚洲精品一区二区免费在线观看| 久久亚洲不卡一区二区三区| 久久这里都是精品| 亚洲 图片 综合91| 伊人久久婷婷| 成视频在线观看免费看| 九九探花视频在线观看| 奇米狠999| 日韩久久.一级黄色片| 一级特黄aaa大片在线观看成人一级片在线观看 | 好爽要喷了| 91欧美巨乳| 久久精品综合| 女人18精品一区二区三区| 久久人妻无码毛片A片麻豆| 色综合20p| 人妻素股| 色噜噜人妻av中文字幕| AV女资源| 五十路三区在线| 少妇综合| 91在线精品一区二区三区| 日韩精品资源专区二区| 国产精品久久久吖| www.色吧5.com| 在线观看高清AV| 亚洲国产一区二区入口| 操逼视频亚洲| 日本韩欧美在线播放a| 性爱av在线免费观看| 国产超碰人人操| 欧美天天插| 黑丝少妇麻豆| 亚州高清色综合| 久久9999| 伊人超碰97| 亚洲天堂在线怕怕视频| 91搞逼视频| 殴美大黄片| 日韩有码免费视频| 九一屌逼| 久热99999| 91精品国产91熟女| 夜夜草天天| 日韩性爱免费视频在线网站| 亚洲午夜福利视频| 花野真衣| 男人 天堂 日 亚洲| 性感美女啊啊啊在线| 啊v在线观看视频| 国产丝袜美女在线一区| 乱伦系列一区二区| 天美麻豆精品视频99| 日本天天干天天搞一区| 一本一道久久综合久久| 久久久日本电影| 家庭乱伦国产精品| 欧美另类综合久久| 五月天色综合| 成人久久精品| 天天综合官网| 这里只有精品视频在线观看麻豆| 久99视频| 9久久美女首页| 国产久久天堂资源| 黑人精品XXX一区一二区| 成人片在线播放| 第四色亚洲色图| 南澳成人一级片在线播放| 一区,二区,三区网站| 国产中文字幕在线观看| 一个人免费视频观看在线WWW| 久久精品国产亚洲AV成人直播| 91女在线观看| 超碰天天去日穴| 高潮的A片激情扒开一区| 无码9区| daxiangjiao你懂的| 91大神精品长腿在线观看网站| 婷婷AV一区二区三区| 欧美天天综| 亚洲动态色图| 国产精品视频精品一二| 四虎国产成人精品免费一女五男| 凌辱美少妇久久aV| 欧美日韩国内不卡| 久久久久久中文版| 97这里只有精品| 色综合色色| 208天天久久九九九| 日韩亚洲精品一区二区| 人妻夜夜爽天天爽麻豆三区网站 | 强奸国产在线| 97这里都是精品| 午夜精品久久99蜜桃的功能章节| www.av在线观看| 91强在线播放| 色就色综合| 97欧美精品综合| 精品人妻一区二区三区日产乱码| 激情婷婷| 精品美女少妇一区二区| 国产真实野战在线视频| 欧美亚洲宗合色性图| 人妻一区二区三区视频| 久久久久久性爱视频| 日本不卡五区| 国产欧美日韩女同性恋ww喷水精品| 自拍啪啪视频| 日韩精品一区二区三区色欲| 熟女91网| 日本精品高清一二区一本到| 亚洲美女黄色| 国产1769在线| 91精品久久久久久| 九九性爱网| 九九九九九九综合| 蜜乳av首页| 唯美清纯 妖精视频| 亚洲色五月| 日本在线伊人啪啪| 啊啊啊操一区| 蜜臀99久久精品久久久久| 91蜜臀熟女| 亚洲成a人v欧美综合天堂下载| 色妹子A V| 立川理惠被中出无码| 亚洲人在线| 国产Av超碰| 日本黄色天堂| 91free福利| 日本不卡一二区| 精品久久久av| 国产精品久久久无码aV去| 中国小夫妻勾搭露脸淫荡对白| 中国一级操逼视频| 亚洲精品久久久久久| 色五月首页| 五月亭亭六月丁香| 天天看特黄的免费网站| 永久免费发布性爱网| 拍拍拍拍大尺度黄色三级片拍拍拍拍拍照| 天天精品| 999久久久九九九九| 999久久久久久久精| 无码直播久久久| 啊嗯嗯啊好大好爽| 亚洲丝袜二区| 精品国产无码中文| 啊啊啊轻点在线观看| 久久久人妻| 亚洲天天做日日做天天谢日日| 色九九综合AV| 蜜桃久久综合视频| 伊人黄色片| 综合五月天| 综合久欧洲| 久久久久9| 免费精品国偷自产在线在线| 亚洲人久久久网| 天天日夜夜爽| 熟妇的味道HD中文字幕| 久久6热视频免费观看| 亚洲精品尤物yw在线影院| 久久久少妇诱惑精品视频| 中亚av| 探花一区二区三| 国产精品久久久久久久久久久久久久吹| 99re这里只有精品中心播放| 国产精品久久久久久久黄无码| 九九九精品美女| 超碰地址97| 大香樵伊人网| 午夜偷拍久久熟女| 日韩欧美加勒比| 婷婷激情五月综合| 操b网站亚洲无码| 久久精品99| 人人人人插| 黄片免费日韩| 床戏久久久av一区二区麻豆| 中文字幕久久精视频久久大全| 五月婷婷色色| 免费观看国产不卡av| 极品销魂美女一区二区 | 天天做日日做天天欢。| 天堂无码| 日日夜夜骑| 老鸭窝日丰县女人| 欧美精品偷拍| 国产精品情侣啪啪| 婷婷丁香久久| 嫖老熟女A片一二三区| 欧美日韩色综合网| 男人亚洲天堂| 欧美激情精品| 日韩BBN| 欧美亚洲综合999| 日韩78m视频| 麻豆性爱视频在线播放| 久久亚洲影院一区二区| 亚洲综合九九| 亚洲AV无码成人精品久久| 亚洲最大成人a毛毛片| 97色伦97色伦国产欧美| 精品一区二区三区免费古装毛片香港三级日本三级人妇 | 老鸭窝成人| 欧美激色| 超碰98综合网| 啊啊啊啊啊好大好舒服想要| 久久熟女人| 天天综合91在线| 国产剧情一区在线观看| 久久婷婷色| 强奸乱亚洲| 国产精品亚洲免费| 免费A V在线| 成人av动漫在线观看| 欧美成人黄网色网站| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 偷拍精品一区二区三区| 外站AV在线| 97干97色| 不卡av免费在线网址| 亚洲九九九| 成人av性爱电影在线观看| а√天堂资源官网在线资源| 无码久久国产| 国产狂喷潮在线精品| 少妇厨房愉情理伦片bd在线观看 | 久久国产精品熟女人妻| 怡春苑东京热| 日韩 欧美 国产 麻豆| 91女优在线观看| 精品十八在线观看| 精品97久久| 国产午夜在线观看| 涩综合导航|