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

安康网站制作公司推荐一下网站谢谢

安康网站制作公司,推荐一下网站谢谢,wordpress 拖拽排序插件,如何运营一个品牌的推广路径之谜 题目描述 小明冒充 XX 星球的骑士,进入了一个奇怪的城堡。 城堡里边什么都没有,只有方形石头铺成的地面。 假设城堡地面是 nnnn 个方格。如下图所示。 按习俗,骑士要从西北角走到东南角。可以横向或纵向移动,但不能斜着走…

路径之谜

题目描述

小明冒充 XX 星球的骑士,进入了一个奇怪的城堡。

城堡里边什么都没有,只有方形石头铺成的地面。

假设城堡地面是 n×nn×n 个方格。如下图所示。

图1

按习俗,骑士要从西北角走到东南角。可以横向或纵向移动,但不能斜着走,也不能跳跃。每走到一个新方格,就要向正北方和正西方各射一箭。(城堡的西墙和北墙内各有 nn 个靶子)同一个方格只允许经过一次。但不必走完所有的方格。如果只给出靶子上箭的数目,你能推断出骑士的行走路线吗?有时是可以的,比如上图中的例子。

本题的要求就是已知箭靶数字,求骑士的行走路径(测试数据保证路径唯一)

输入描述

第一行一个整数 NN (0≤N≤200≤N≤20),表示地面有 N×NN×N 个方格。

第二行 NN 个整数,空格分开,表示北边的箭靶上的数字(自西向东)

第三行 NN 个整数,空格分开,表示西边的箭靶上的数字(自北向南)

输出描述

输出一行若干个整数,表示骑士路径。

为了方便表示,我们约定每个小格子用一个数字代表,从西北角开始编号: 0,1,2,3 ⋯⋯

比如,上图中的方块编号为:

0 1 2 3

4 5 6 7

8 9 10 11

12 13 14 15

输入输出样例

示例

输入

4
2 4 3 4
4 3 3 3

输出

0 4 5 1 2 3 7 11 10 9 13 14 15

好久没写都有点生疏,调试了很久。

#include <iostream>
using namespace std;int n, top[25], left1[25], map[25][25];
int res[800][2], idx = 0, flag = 0, started = 0;
int dir[4][2] = {{1, 0}, {0, 1}, {-1, 0}, {0, -1}};void dfs(int cur_row, int cur_col){//cout<<cur_row<<" "<<cur_col<<endl;if(flag == 1){//cout<< "flag == 1"<<endl;return ;}if(cur_row < 1 || cur_row > n || cur_col < 1 || cur_col > n){//cout<< "out of bound"<<endl;return ; }if(map[cur_row][cur_col] > 1){return ;}int cnt = 0;for(int i=1; i<=n; i++){//cout<<top[i] <<" "<< left1[i]<<endl;if(top[i] < 0 || left1[i] < 0){//cout<< "negative num"<<endl;	return ;}cnt += top[i] + left1[i];}if(cur_row == n && cur_col == n && cnt == 0){ //cout<< "yes"<<endl;flag = 1;return ;}for(int i=0; i<4; i++){res[idx][0] = cur_row;res[idx][1] = cur_col;left1[cur_row + dir[i][0]]--;top[cur_col + dir[i][1]]--;map[cur_row + dir[i][0]][cur_col + dir[i][1]] += 1;idx++;dfs(cur_row + dir[i][0], cur_col + dir[i][1]);if(flag == 1){//cout<<"yes--"<<endl;return ;}left1[cur_row + dir[i][0]]++;top[cur_col + dir[i][1]]++;map[cur_row + dir[i][0]][cur_col + dir[i][1]] -= 1;idx--;}
}int main()
{  cin>>n;for(int i=1; i<=n; i++){cin>>top[i];}for(int i=1; i<=n; i++){cin>>left1[i];}map[1][1] = 1;left1[1]--;top[1]--;dfs(1, 1);for(int i=0; i<idx; i++){int num = ( res[i][0] - 1 ) * n + res[i][1] - 1;cout<<num<<" ";}cout<< n * n - 1;return 0;
}

http://www.yayakq.cn/news/719913/

相关文章:

  • 宜昌网站企业资源分享论坛wordpress
  • 如何用自己的电脑做网站空间百度广告联盟一个月能赚多少
  • 韩城建设局网站网站服务器租用阿里云一年多少钱啊
  • 二手网站模板网页设计培训班学费
  • 山东东营建设网官方网站四川宜宾今天最新消息
  • 电子商务基础网站建设定制网站开发哪家好
  • 保定网站建设方法wordpress 4.2 emoji
  • 南京cms模板建站zencart网站地图插件
  • 深圳公司网站备案需要什么资料帝国cms关闭网站
  • 南京网站建设开发公司自建网站如何在百度上查到
  • 网站建设公司好wordpress自定义文章类型输出数量
  • 网站建设都需要哪些书.net网站开发步骤
  • 赶集网租房个人房源无锡网站seo顾问
  • 网站建设需求量商标设计找哪里
  • 四川建站模板网站公司如何建设一个自己 的网站首页
  • 网站建设与网页设计制作绿皮书动态页面制作
  • 企业网站建设的征求意见seo谷歌推广
  • seo网站推广多少钱电商模板网站
  • 门户网站是如何盈利的手机网页设计
  • 网红网站建设湖南电商平台网站建设
  • 装潢公司网站模板做网站宜宾
  • 外贸网站 在线留言国内最大的c2c网站
  • zencart 网站建设做网站销售怎么开发客户
  • 0基础如何做网站电商网站开发参考文献
  • 网站打开空白页白云区网站建设公司
  • 滨州淄博网站建设要学做网站
  • 聊城网站改版江苏天矗建设集团网站
  • 网站图片的像素网站怎样建设才叫人性化
  • 获取网站全站代码域名备案查询系统
  • 爱情动做网站推荐外链平台