中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

河南手機(jī)網(wǎng)站建設(shè)公司哪家好seo網(wǎng)站關(guān)鍵詞排名軟件

河南手機(jī)網(wǎng)站建設(shè)公司哪家好,seo網(wǎng)站關(guān)鍵詞排名軟件,南聯(lián)企業(yè)網(wǎng)站建設(shè),農(nóng)業(yè)銀行總行門(mén)戶(hù)網(wǎng)站建設(shè)馬踏棋盤(pán)c 題目回溯問(wèn)題模型特征模型 代碼 題目 馬踏棋盤(pán)算法,即騎士周游問(wèn)題。將馬放在國(guó)際象棋的 88 棋盤(pán)的某個(gè)方格中,馬按走棋規(guī)則(馬走日字)進(jìn)行移動(dòng)。每個(gè)方格只進(jìn)入一次,走遍棋盤(pán)上全部 64 個(gè)方格。 回溯問(wèn)題模型 特征 解組織成樹(shù)…

馬踏棋盤(pán)c++

  • 題目
  • 回溯問(wèn)題模型
    • 特征
    • 模型
  • 代碼

題目

  • 馬踏棋盤(pán)算法,即騎士周游問(wèn)題。
  • 將馬放在國(guó)際象棋的 8×8 棋盤(pán)的某個(gè)方格中,馬按走棋規(guī)則(馬走日字)進(jìn)行移動(dòng)。
  • 每個(gè)方格只進(jìn)入一次,走遍棋盤(pán)上全部 64 個(gè)方格。

回溯問(wèn)題模型

特征

  • 解組織成樹(shù)的形式
  • 從根節(jié)點(diǎn)開(kāi)始進(jìn)行深度優(yōu)先遍歷
  • 訪(fǎng)問(wèn)節(jié)點(diǎn)時(shí)進(jìn)行判斷,是否符合條件,符合就繼續(xù),否則進(jìn)行回溯,此節(jié)點(diǎn)后的都不用訪(fǎng)問(wèn)(與暴力算法的區(qū)別,降低算法復(fù)雜度)

模型

在這里插入圖片描述

代碼

  • 代碼演示的是5*5的棋盤(pán)。
  • 遞歸的出口為步數(shù)k=棋盤(pán)數(shù)M*M。
  • 遞歸主函數(shù)就是對(duì)每一坐標(biāo)的8種走法進(jìn)行判斷。符合條件就調(diào)用遞歸函數(shù)。
  • 然后回溯上一步。
  • map變量ma記錄棋盤(pán)上的每一個(gè)坐標(biāo)是否走過(guò)。沒(méi)有走過(guò)的,將其坐標(biāo)加入map中,成為鍵,值記錄第幾步。
#include<iostream>
#include<map>
#include<iomanip> //出輸格式設(shè)定 
using namespace std;
struct Pos{//定義坐標(biāo)點(diǎn)int x;int y;Pos(int x,int y){this->x=x;this->y=y;}
}; 
int count=0;//記錄一共有多少種解法
void show(int M,map<Pos,int>& ma);
//馬的8種走法
Pos delta[]={Pos(-1,2),Pos(-1,-2),Pos(1,2),Pos(1,-2),Pos(2,1),Pos(2,-1),Pos(-2,1),Pos(-2,-1)};
//運(yùn)算符重載 
Pos operator+(Pos a,Pos b){return Pos(a.x+b.x,a.y+b.y);
}
//馬走的步法是否有效,如果出了格子表示bad,即為true
bool outOfBounds(int M,Pos p){if(p.x<0 || p.x>= M) return true;if(p.y<0 || p.y>= M) return true;return false;
}
//自定義變量Pos需要用map,則須重載<,確保Pos能比較大小 
bool operator< (Pos a,Pos b){if(a.x != b.x) return a.x < b.x;return a.y < b.y;
}
//bool operator<(const Pos& p) const{
//	if(this->x !=p.x) return this->x < p.x;
//	return this->y < p.y;
//}
bool f(int M,map<Pos,int>& ma,Pos p,int k){if(k==M*M){++count;cout<< count<<endl;show(M,ma);return true;} 		for(int i=0;i<8;i++){Pos p1=p+delta[i];if(outOfBounds(M,p1)) continue;if(ma.count(p1)) continue;ma[p1] = k+1;f(M,ma,p1,k+1);ma.erase(p1);}return false;
}
void show(int M,map<Pos,int>& ma){for(int i=0;i<M;i++){for(int j=0;j<M;j++){cout <<setw(3)<<ma[Pos(i,j)];}cout<<endl;}cout<<"********************"<<endl;
}
void horse(int M){map<Pos,int> ma;Pos p(0,0);ma[p]=1;f(M,ma,p,1); 		
}
int main(){horse(5);cout<<"總共有:"<<count<<"種走法"; return 0;
}
http://www.risenshineclean.com/news/57191.html

相關(guān)文章:

  • 月嫂云商城網(wǎng)站建設(shè)百度廣告聯(lián)盟下載
  • 揚(yáng)州市江都區(qū)城鄉(xiāng)建設(shè)局網(wǎng)站愛(ài)站網(wǎng)關(guān)鍵詞排名
  • 中英版網(wǎng)站系統(tǒng)企業(yè)網(wǎng)絡(luò)推廣計(jì)劃書(shū)
  • 上海期貨配資網(wǎng)站開(kāi)發(fā)上google必須翻墻嗎
  • 服務(wù)網(wǎng)絡(luò)營(yíng)銷(xiāo)的含義太原seo推廣
  • 如何做跨境電商新手入門(mén)教程seo排名如何
  • 外包客服公司好做嗎首頁(yè)排名seo
  • 珠海市網(wǎng)站開(kāi)發(fā)公司seo競(jìng)價(jià)
  • 怎么做火短視頻網(wǎng)站seo門(mén)戶(hù)網(wǎng)價(jià)格是多少錢(qián)
  • 一個(gè)ip地址上可以做幾個(gè)網(wǎng)站今日新聞聯(lián)播
  • 做網(wǎng)站用什么語(yǔ)言要做網(wǎng)絡(luò)推廣
  • 海珠區(qū)有沒(méi)有專(zhuān)門(mén)做網(wǎng)站的地方全球最大的中文搜索引擎
  • 專(zhuān)業(yè)網(wǎng)站建設(shè) 公司哪家好杭州網(wǎng)站推廣與優(yōu)化
  • 網(wǎng)站推廣中應(yīng)注意哪些事項(xiàng)泉州seo技術(shù)
  • 做網(wǎng)站需要買(mǎi)seo中國(guó)是什么
  • 江蘇網(wǎng)站開(kāi)發(fā)輿情分析網(wǎng)站免費(fèi)
  • 偷拍網(wǎng)站做色盲測(cè)試圖第六版
  • 鄭州百度網(wǎng)站優(yōu)化排名百度賬號(hào)申訴
  • 如何建設(shè)網(wǎng)站效果好百度發(fā)布信息的免費(fèi)平臺(tái)
  • 深圳市多語(yǔ)言網(wǎng)站建設(shè)公司廣州百度關(guān)鍵詞排名
  • 人才網(wǎng)站的會(huì)計(jì)賬如何做網(wǎng)絡(luò)推廣渠道公司
  • 美女做暖暖視頻免費(fèi)網(wǎng)站網(wǎng)絡(luò)營(yíng)銷(xiāo)圖片素材
  • 供應(yīng)邯鄲專(zhuān)業(yè)做網(wǎng)站網(wǎng)站seo入門(mén)基礎(chǔ)教程書(shū)籍
  • 南昌網(wǎng)站建設(shè)哪家好哈爾濱seo推廣
  • 軟件首頁(yè)設(shè)計(jì)圖微博seo營(yíng)銷(xiāo)
  • 運(yùn)營(yíng)最好的網(wǎng)站西安網(wǎng)站關(guān)鍵詞優(yōu)化推薦
  • 南京網(wǎng)站設(shè)計(jì)公司推薦企業(yè)策劃推廣公司
  • 動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)教案網(wǎng)頁(yè)模版
  • 武漢網(wǎng)站設(shè)計(jì)廠家網(wǎng)頁(yè)版百度云
  • 對(duì)政府網(wǎng)站有關(guān)標(biāo)準(zhǔn)規(guī)范建設(shè)的需求中國(guó)進(jìn)入一級(jí)戰(zhàn)備狀態(tài)了嗎