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

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

假设城堡地面是 n x n 个方格。【如图1.png】所示。

按习俗,骑士要从西北角走到东南角。

可以横向或纵向移动,但不能斜着走,也不能跳跃。

每走到一个新方格,就要向正北方和正西方各射一箭。

(城堡的西墙和北墙内各有 n 个靶子)

同一个方格只允许经过一次。但不必走完所有的方格。

如果只给出靶子上箭的数目,你能推断出骑士的行走路线吗?

有时是可以的,比如图1.png中的例子。

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

输入:

第一行一个整数N(0

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

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

输出:

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

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

比如,图1.png中的方块编号为:

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

资源约定:

峰值内存消耗 < 256M

CPU消耗 < 1000ms

请严格按要求输出,不要画蛇添足地打印类似:“请您输入...” 的多余内容。

所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。

注意: main函数需要返回0

注意: 只使用ANSI C/ANSI C++ 标准,不要调用依赖于编译环境或操作系统的特殊函数。

注意: 所有依赖的函数必须明确地在源文件中 #include , 不能通过工程设置而省略常用头文件。

提交时,注意选择所期望的编译器类型。

代码:

#include

using namespacestd;int vis[20][20];int c[20],r[20],n,flag,all;int path[400];int dir[4][2] = {0,1,1,0,0,-1,-1,0};void print(intk) {

cout<<0;for(int i = 0;i < k;i ++) {

cout<

}

}void dfs(int x,int y,intk) {if(x == n - 1 && y == n - 1) {if(all == k * 2) {

print(k);

flag= 1;

}return;

}if(flag) return;for(int i = 0;i < 4;i ++) {if(flag) return;int tx = x + dir[i][0];int ty = y + dir[i][1];if(tx < 0 || ty < 0 || tx >= n || ty >= n || vis[tx][ty] || !c[ty] || !r[tx]) continue;

c[ty]--;

r[tx]--;

vis[tx][ty]= true;

path[k]= tx * n +ty;

dfs(tx,ty,k+ 1);

vis[tx][ty]= false;

c[ty]++;

r[tx]++;

}

}intmain() {

cin>>n;for(int i = 0;i < n;i ++) {

cin>>c[i];

all+=c[i];

}for(int i = 0;i < n;i ++) {

cin>>r[i];

all+=r[i];

}

vis[0][0] = true;

c[0] --;

r[0] --;

all-= 2;

dfs(0,0,0);return 0;

}

路径之谜 java_路径之谜 - 给杰瑞一块奶酪~ - 博客园相关推荐

  1. logminer java_使用OracleLogminer同步Demo1Demo介绍-博客园.PDF

    使用OracleLogminer同步Demo1Demo介绍-博客园 使用Oracle Logminer 同步Demo 1 Demo 介绍 1.1 Demo 设想 前面介绍了Oracle LogMine ...

  2. 路径之谜 java_路径之谜游戏下载

    路径之谜画风非常清新治愈,玩家需要靠自己的记忆来帮助男女主人见到彼此,也许见你需要花费我的好多时间和精力,但是我依然义无反顾,只想看到你而已,游戏内容非常丰富,玩家需要仔细思考下一步应该做什么,感兴趣 ...

  3. linux运行input文件路径,new FileInputStream(filePath)方法在linux下执行不正确 | ZPY博客...

    因为要做下载,代码里用的new FileInputStream(filePath)读取文件在windows下测试正常,但打包放到Linux下执行就不正常了,也不报错,但是下载下来的图片是损坏的.感觉是 ...

  4. 圈复杂度函数Java_圈复杂度 - byron_nj - 博客园

    Cyclomatic Complexity 1. 概念 a. 圈复杂度是一种衡量代码复杂程度的标准. b. 圈复杂度高的害处: 圈复杂度大说明代码的判断逻辑复杂,可能质量低: 需要的更多的测试用例,难 ...

  5. 逆元java_逆元 - 阿聊 - 博客园

    每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) , 一个数有逆元的充分必要条件是gcd(a,n)=1,此时逆元唯一存在 . 逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a ...

  6. asobject java_函数即对象(FunctionAsObject)- Martin Fowler博客

    /** * 献给我最尊敬的偶像Martin Fowler * 原文出处:https://martinfowler.com/bliki/FunctionAsObject.html * @author d ...

  7. 围城java_围城有感 - cayman丿2016 - 博客园

    钱老先生说:"我想写现代中国某一部分社会.某一类人物.写这类人,我没忘记他们是人类,只是人类,具有无毛两足动物的基本根性.角色当然是虚构的,但是有考据癖的人也当然不肯错过索隐的杨会.放弃附会 ...

  8. 后端渲染 java_前后端渲染 - 空一座旧城,守一个旧人 - 博客园

    前后端渲染之争 1.引言 十年前,几乎所有网站都使用 ASP.Java.PHP 这类做后端渲染,但后来随着 jQuery.Angular.React.Vue 等 JS 框架的崛起,开始转向了前端渲染. ...

  9. 骑士游历java_骑士游历 - 凡尘里的一根葱 - 博客园

    package经典;public classKnight {/***@paramargs*/ public static voidmain(String[] args) {//TODO Auto-ge ...

最新文章

  1. HDFS--Hadoop分布式文件系统
  2. python 为何要学16进制,从十六进制Python中的补
  3. css position left 50%
  4. hive 如何将数组转成字符串_教你如何将Power Logic的原理图转成Orcad的原理图
  5. 智慧交通day02-车流量检测实现09:SORT/deepSORT
  6. Oracle11g报bde,表现 – BDE与ADO在德尔福
  7. Android中关于键盘的处理
  8. Atitit stomp.js conn连接activemq 目录 1.1. activemq 启动,已经默认开启了stomp ws的接口。。地址是 1 1.2. Js 客户端代码 1 1.3
  9. eps图片怎样用html显示,eps图片用什么软件打开
  10. 什么是GPS,GPS技术主要有哪些特点?
  11. 7-2 哥尼斯堡的“七桥问题” (25分)
  12. 火狐浏览器设置深色主题
  13. STM32F103(七)——通用定时器的说明与功能
  14. 华为云计算IE面试笔记-简述Fusion Storage主要模块MDC,OSD,VBS,FSA及FSM的功能定位及交互关系
  15. RSF 分布式 RPC 服务信息的暴露
  16. php mcv,swolle http mcv设计问题
  17. MySQL高可用和灾备调研
  18. 使用ZEGO SDK零基础搭建Android语音聊天应用
  19. matlab绘四叶玫瑰线,玫瑰线 - calculus的日志 - 网易博客
  20. Prometheus Operator概述

热门文章

  1. android studio_真机测试
  2. 考研这么累,能支持你坚持到底的是什么?
  3. aizu-0558 cheese
  4. SpringCloud-3-Ribbon
  5. RC低通滤波器的响应特性
  6. R语言数据可视化中颜色设置
  7. 怎么在vue中发起数据请求
  8. Exception in thread' main” java. 1ang. Runt imeException: Error while running command to get file pe
  9. 华硕fx60vm拆机图解_飞行堡垒fx60vm怎么样 华硕飞行堡垒FX60VM全面深度评测图解...
  10. 错误方法修改用户名后,开机提示无法登录到你的账户的正确解决方法