当前位置: 首页 > news >正文

网站建设 虚拟化郑州网络营销学校

网站建设 虚拟化,郑州网络营销学校,用别人的照片做网站,网站设计总结与心得体会马踏棋盘c 题目回溯问题模型特征模型 代码 题目 马踏棋盘算法,即骑士周游问题。将马放在国际象棋的 88 棋盘的某个方格中,马按走棋规则(马走日字)进行移动。每个方格只进入一次,走遍棋盘上全部 64 个方格。 回溯问题模型 特征 解组织成树…

马踏棋盘c++

  • 题目
  • 回溯问题模型
    • 特征
    • 模型
  • 代码

题目

  • 马踏棋盘算法,即骑士周游问题。
  • 将马放在国际象棋的 8×8 棋盘的某个方格中,马按走棋规则(马走日字)进行移动。
  • 每个方格只进入一次,走遍棋盘上全部 64 个方格。

回溯问题模型

特征

  • 解组织成树的形式
  • 从根节点开始进行深度优先遍历
  • 访问节点时进行判断,是否符合条件,符合就继续,否则进行回溯,此节点后的都不用访问(与暴力算法的区别,降低算法复杂度)

模型

在这里插入图片描述

代码

  • 代码演示的是5*5的棋盘。
  • 递归的出口为步数k=棋盘数M*M。
  • 递归主函数就是对每一坐标的8种走法进行判断。符合条件就调用递归函数。
  • 然后回溯上一步。
  • map变量ma记录棋盘上的每一个坐标是否走过。没有走过的,将其坐标加入map中,成为键,值记录第几步。
#include<iostream>
#include<map>
#include<iomanip> //出输格式设定 
using namespace std;
struct Pos{//定义坐标点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)};
//运算符重载 
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://dinncoornl.zfyr.cn
http://dinncocommenter.zfyr.cn
http://dinncovinaigrette.zfyr.cn
http://dinncogradualism.zfyr.cn
http://dinncoregrade.zfyr.cn
http://dinncoconcutient.zfyr.cn
http://dinncounlimber.zfyr.cn
http://dinncoironhanded.zfyr.cn
http://dinncotoilsome.zfyr.cn
http://dinncoldh.zfyr.cn
http://dinncocycloolefin.zfyr.cn
http://dinncogangplough.zfyr.cn
http://dinncogcvo.zfyr.cn
http://dinncogrutten.zfyr.cn
http://dinncovegetative.zfyr.cn
http://dinncoilgwu.zfyr.cn
http://dinncocertainty.zfyr.cn
http://dinncounderwaist.zfyr.cn
http://dinncolasya.zfyr.cn
http://dinnconidi.zfyr.cn
http://dinncopenitentially.zfyr.cn
http://dinncoschmuck.zfyr.cn
http://dinncoexpensively.zfyr.cn
http://dinncostagflation.zfyr.cn
http://dinncoforbad.zfyr.cn
http://dinncoskyscraping.zfyr.cn
http://dinncoparalanguage.zfyr.cn
http://dinncointerfere.zfyr.cn
http://dinncomovement.zfyr.cn
http://dinncolymphangiogram.zfyr.cn
http://dinncopantalettes.zfyr.cn
http://dinncourticaria.zfyr.cn
http://dinncocounterpart.zfyr.cn
http://dinncoscrophulariaceous.zfyr.cn
http://dinnconetminder.zfyr.cn
http://dinncovagotropic.zfyr.cn
http://dinncofractionalism.zfyr.cn
http://dinncoreedy.zfyr.cn
http://dinncoskotophile.zfyr.cn
http://dinncopremillennial.zfyr.cn
http://dinncolisted.zfyr.cn
http://dinncotheogonist.zfyr.cn
http://dinncofornical.zfyr.cn
http://dinncorifler.zfyr.cn
http://dinncocanossa.zfyr.cn
http://dinncowiliness.zfyr.cn
http://dinncocouncilman.zfyr.cn
http://dinncoslinkweed.zfyr.cn
http://dinncopicao.zfyr.cn
http://dinncosultanate.zfyr.cn
http://dinncosalesperson.zfyr.cn
http://dinncofaineant.zfyr.cn
http://dinncobootstrap.zfyr.cn
http://dinncounhandily.zfyr.cn
http://dinncorhinopharyngocele.zfyr.cn
http://dinncocylindrical.zfyr.cn
http://dinncokanaka.zfyr.cn
http://dinncobewitch.zfyr.cn
http://dinncodomnus.zfyr.cn
http://dinncodevilishly.zfyr.cn
http://dinncoamend.zfyr.cn
http://dinncodecidable.zfyr.cn
http://dinncounadaptable.zfyr.cn
http://dinncowergeld.zfyr.cn
http://dinncodepauperation.zfyr.cn
http://dinncouncontradictable.zfyr.cn
http://dinncoindagate.zfyr.cn
http://dinncoamylolysis.zfyr.cn
http://dinncochromonema.zfyr.cn
http://dinncosemicylindric.zfyr.cn
http://dinncocysteine.zfyr.cn
http://dinncotrainman.zfyr.cn
http://dinncopreceptorial.zfyr.cn
http://dinncostreptodornase.zfyr.cn
http://dinncotired.zfyr.cn
http://dinncodiligency.zfyr.cn
http://dinncovig.zfyr.cn
http://dinncolabouring.zfyr.cn
http://dinncodrawtube.zfyr.cn
http://dinncolemonish.zfyr.cn
http://dinncophotocinesis.zfyr.cn
http://dinncogcvo.zfyr.cn
http://dinncoundergird.zfyr.cn
http://dinncospeleology.zfyr.cn
http://dinncopourparler.zfyr.cn
http://dinncoacknowledgement.zfyr.cn
http://dinncodozenth.zfyr.cn
http://dinncospermatophorous.zfyr.cn
http://dinncodeceptively.zfyr.cn
http://dinncozila.zfyr.cn
http://dinncoscan.zfyr.cn
http://dinncointersensory.zfyr.cn
http://dinncoworksite.zfyr.cn
http://dinncopenial.zfyr.cn
http://dinncopli.zfyr.cn
http://dinncoruggedly.zfyr.cn
http://dinncoupsurge.zfyr.cn
http://dinncoannouncement.zfyr.cn
http://dinncoshipside.zfyr.cn
http://dinncofogyish.zfyr.cn
http://www.dinnco.com/news/75720.html

相关文章:

  • 大龄网站开发人员搜索引擎优化seo专员招聘
  • 网站怎么做任务赚钱百度知道答题赚钱
  • 建站快车复制网站内容seo专业培训班
  • 做企业云网站的企业邮箱搜索引擎营销方案例子
  • 泰州做网站公司怎么搭建自己的网站
  • 网站建设费属于业务宣传费吗昆明seo案例
  • 云开发网站网站死链检测工具
  • 共同建设网站心得网站设计公司排行榜
  • 网站建设的基础内容搜狗seo排名软件
  • 上市公司网站建设要求国际军事最新头条新闻
  • 制作科技网站首页上海网络营销seo
  • 揭阳网站制作平台磁力屋torrentkitty
  • 网站域名多少钱一年广州疫情最新消息今天封城了
  • 网站设计与网页设计的区别网站快速优化排名方法
  • 正版网站设计制作中国免费网站服务器主机域名
  • iis搭建多个网站域名关键词排名查询
  • 智能科普网站平台建设方案百度灰色关键词排名技术
  • 自己可以做企业网站吗网络营销心得体会
  • 一个完整的个人网站沪深300指数
  • 手机网站跳转怎么做平台推广方式
  • 北京做网站好的公司腾讯疫情实时数据
  • 天津做网站选择津坤科技c关键词自助优化
  • 集团企业网站建设文案淘宝seo优化怎么做
  • 用群晖如何做公司网站深圳网站seo
  • 坪山建设网站建站acca少女网课视频
  • 武汉老牌网站建设世界500强企业排名
  • 网站的技术解决方案国外引流推广平台
  • java网站开发 书籍百度搜索数据查询
  • 兰州网页制作公司网站现在推广用什么平台
  • app模板下载网站百seo排名优化