1997年
 时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 黄金 Gold

题解
题目描述 Description

设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马。

规定:

1)马只能走日字

2)马只能向右跳

问给定起点x1,y1和终点x2,y2,求出马从x1,y1出发到x2,y2的合法路径条数。

输入描述 Input Description

第一行2个整数n和m

第二行4个整数x1,y1,x2,y2

输出描述 Output Description

输出方案数

样例输入 Sample Input

30 30

1 15 3 15

样例输出 Sample Output

2

数据范围及提示 Data Size & Hint

2<=n,m<=50

分类标签 Tags 点此展开

动态规划 棋盘型DP 1997年
代码
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
long long f[101][101];
int n,m,x1,x2,y1,y2;
int main()
{scanf("%d%d",&n,&m);scanf("%d%d%d%d",&x1,&y1,&x2,&y2);f[x1][y1]=1;//显然,当前所在点的途径只有1 for(int i=x1;i<=n;i++)//从当前所在点开始  for(int j=1;j<=m;j++){if(i-2>0&&j-1>0)  f[i][j]+=f[i-2][j-1];if(i-2>0&&j+1<=m) f[i][j]+=f[i-2][j+1];if(i-1>0&&j-2>0)  f[i][j]+=f[i-1][j-2];if(i-1>0&&j+2<=m) f[i][j]+=f[i-1][j+2];}cout<<f[x2][y2];return 0;
}

注意:在赋初值的时候一定要注意赋哪个!!

思路:还记得过河卒吗?

这个题和那个题的思路是一样的!

由于马只能走日而且只能从左边来,所以要判断4种情况,他从(-2,1)(-2,-1)(-1,2)(-1,-2)这4个地方来,

但还要判断他是否出界!!!

所以该点的方案数就是这4个点的方案数的和!

转载于:https://www.cnblogs.com/z360/p/6746861.html

1219 骑士游历(棋盘DP)相关推荐

  1. Codevs 1219 骑士游历

    1219 骑士游历 1997年 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50), ...

  2. CODE[VS] 1219 骑士游历

    题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马. 规定: 1)马只能走日字 2)马只能向右跳 问给定起点x1,y1和终点x2,y ...

  3. codevs 1219 骑士游历 1997年

    时间限制: 1 s  空间限制: 128000 KB  题目等级 : 黄金 Gold 题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象 ...

  4. wikioi 1219 骑士游历

    题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马. 规定: 1)马只能走日字 2)马只能向右跳 问给定起点x1,y1和终点x2,y ...

  5. codevs1219 骑士遍历(棋盘DP)

    题目描述 Description 设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马. 规定: 1)马只能走日字 2)马只能向右跳 问给定起点x1,y1和终点x2,y ...

  6. 骑士游历问题(C语言代码)

    关于骑士游历问题,大家可以想到的方法是回溯法和贪心算法.回溯法的时间复杂度比较高,贪心算法的时间复杂度就好多了. 骑士游历问题 问题描述: 棋盘大小是8*8,骑士在棋盘任一方格开始游历.要求骑士游历棋 ...

  7. c语言骑士游历优化算法,骑士游历问题(C语言代码)

    关于骑士游历问题,大家可以想到的方法是回溯法和贪心算法.回溯法的时间复杂度比较高,贪心算法的时间复杂度就好多了. 骑士游历问题 问题描述: 棋盘大小是8*8,骑士在棋盘任一方格开始游历.要求骑士游历棋 ...

  8. 骑士游历问题(马踏棋盘)解析(c++)

    骑士游历问题:在国际棋盘上使一个骑士遍历所有的格子一遍且仅一遍,对于任意给定的顶点,输出一条符合上述要求的路径 解题思路: 这是一道经典的遍历问题(DFS),由于题目要求遍历全部,那么肯定要做标记,因 ...

  9. java编写类骑士游历_java课程设计骑士游历程序的开发

    java课程设计骑士游历程序的开发 JAVA程序设计 课程设计报告 课 题: 骑士游历程序的开发 姓 名: 学 号: 同组姓名: 专业班级: 指导教师: 设计时间: 2013.06.10 评阅意见: ...

最新文章

  1. 2018-4-8模拟退火算法
  2. es6学习笔记2-—symbol、变量与作用域
  3. Java学习之生成随机数
  4. NoSQL和SQL怎么选用?
  5. 【高性能定时器】 时间轮
  6. 10分钟上线 - 利用函数计算构建微信小程序的Server端
  7. Linux系统常用指令总结
  8. 三星手机 java_如何在三星手机上安装Java ME应用程序?
  9. 调整谷歌reCAPTCHA大小 How to resize the Google noCAPTCHA reCAPTCHA
  10. URL中包含url参数,(文件路径作为参数)
  11. 客户端用java api 远程操作HDFS以及远程提交MR任务(源码和异常处理)
  12. 如何定时唤醒计算机命令,如何设置定时开机 定时开机命令设置方法
  13. python时间序列预测不连续怎么办_手把手教你用Python处理非平稳时间序列
  14. 2. HTTP 报文
  15. 0.96寸OLED 屏幕SSD1306驱动四脚原理图PDF
  16. 总结:硬盘随机读写与顺序读写的性能差异
  17. (一)来自 192.168.xx.xx的回复: TTL 传输中过期。
  18. 鸿蒙时期电视剧,《我的时代,你的时代》|电视剧简介
  19. 微信小程序常见问题记录
  20. Python学习日志--摆动吧!钟摆!

热门文章

  1. matlab 水平投影,matlab图像处理方面的问题。水平投影和垂直投影!
  2. android 虹软 例子,虹软免费人脸识别 Demo [Android]
  3. 微波射频学习笔记7--------阻抗匹配
  4. android 跳转第三方应用qq或联系我们功能使用qq
  5. CSS3画八卦太极图(绕一个圆旋转)
  6. js实现图片瀑布流布局
  7. Three.js 后期处理-泛光效果-BloomPass-相机分层渲染
  8. 2014-01-14
  9. discuz服务器500错误信息,discuz论坛程序突然出现http500错误解决方案
  10. 阿里云Apsara Clouder专项技能认证-实现调用API接口-学习笔记