题干:

描述

输入

输入包含多组数据,第一行T表示数据组数接下来每行六个整数n,m,x1,y1,x2,y2(分别表示n,m,起点坐标,终点坐标)

输出

输出T行,表示起点到终点的路径数

输入样例 1

1
30 30 1 15 3 15

输出样例 1

2

解题报告:

这题刚开始想用dfs来写,结果发现数字一大,连结果都跑不出来,再看题、、马只能向右走。,于是就可以dp了啊。

AC代码:

#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,m,sx,sy,ex,ey,num;
bool vis[55][55];
ll maze[55][55];
//只能往下走
//void dfs(int x,int y) {
//  if(x == ex && y == ey) {
//      num++;return ;
//  }
//  if(x < 1 || x > n ||y < 1 || y > m) return ;
//  if(x >= ex) return ;if(!vis[x-1][y-2]) {vis[x-1][y-2]=1;dfs(x-1,y-2);vis[x-1][y-2]=0;}if(!vis[x-2][y-1]) {vis[x-2][y-1]=1;dfs(x-2,y-1);vis[x-2][y-1]=0;}if(!vis[x-2][y+1]) {vis[x-2][y+1]=1;dfs(x-2,y+1);vis[x-2][y+1]=0;}if(!vis[x-1][y+2]) {vis[x-1][y+2]=1;dfs(x-1,y+2);vis[x-1][y+2]=0;}
//  if(!vis[x+1][y+2]) {
//      vis[x+1][y+2]=1;dfs(x+1,y+2);vis[x+1][y+2]=0;
//  }
//  if(!vis[x+2][y+1]) {
//      vis[x+2][y+1]=1;dfs(x+2,y+1);vis[x+2][y+1]=0;
//  }
//  if(!vis[x+2][y-1]) {
//      vis[x+2][y-1]=1;dfs(x+2,y-1);vis[x+2][y-1]=0;
//  }
//  if(!vis[x+1][y-2]) {
//      vis[x+1][y-2]=1;dfs(x+1,y-2);vis[x+1][y-2]=0;
//  }
//}int main()
{ll t;cin>>t;while(t--) {scanf("%d%d%d%d%d%d",&n,&m,&sx,&sy,&ex,&ey);
//      memset(vis,0,sizeof vis);memset(maze,0,sizeof maze);
//      num = 0;
//      vis[sx][sy]=1;maze[sx][sy]=1;for(int i = sx+1; i<=ex; i++) {for(int j = 1; j<=n; j++) {maze[i][j] = maze[i-1][j-2]+maze[i-1][j+2]+maze[i-2][j-1]+maze[i-2][j+1];}}
//      dfs(sx,sy);printf("%lld\n",maze[ex][ey]);}return 0 ;
}

【qduoj - 夏季学期创新题】骑士游历(递推dp)相关推荐

  1. 【qduoj - 夏季学期创新题】C语言课程设计-阶梯问题(dp,高精度大数)

    题干: 描述 N级阶梯,人可以一步走一级,也可以一步走两级,求人从阶梯底端走到顶端可以有多少种不同的走法. 输入 一个整数n,代表台阶的阶数. 输出 求人从阶梯底端走到顶端可以有多少种不同的走法,输出 ...

  2. 【qduoj - 夏季学期创新题】矩形剖分(递归,dp)

    题干: 描述 对一个给定的矩形,将其划分成尽可能少的正方形,输出正方形的最少个数.例如,如下图所示的情况,则输入为3和4,输出为4. 输入 输入两个整数中间用空格分开. 输出 输出最少分割成的正方形的 ...

  3. 【qduoj - 夏季学期创新题】最长公共子串(水题暴力枚举,不是LCS啊)

    题干: 描述 编写一个程序,求两个字符串的最长公共子串.输出两个字符串的长度,输出他们的最长公共子串及子串长度.如果有多个最长公共子串请输出在第一个字符串中先出现的那一个. 特别注意公共子串中可能包含 ...

  4. 2019 ICPC Asia Nanjing Regional C.Digital Path(拓扑排序递推DP)

    整理的算法模板合集: ACM模板 题目传送门 三段题面,只有第三段是有用的-前两段又长单词又难懂,就是在讲故事...不过针对四种情况给出四个图帮助我们理解题意是真的赞,可能出题人怕我们看不懂吧(第一句 ...

  5. 解题报告:luogu P2272 [ZJOI2007]最大半连通子图(tarjan缩点、递推DP、hash、set判重)

    这时yxc上课时讲解的截图. 一般用到tarjan算法的题目步骤都非常相似: tarjan算法 缩点,建图(这里要判重) 按照拓扑序递推(这里缩点以后逆向就已经是拓扑序了)/ 循环遍历新图求解答案. ...

  6. hdu1978(递推dp)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1978 分析: 递推DP. dp[][]表示可以到达改点的方法数. 刚开始: 外循环扫描所有点dp[x] ...

  7. 递推DP URAL 1119 Metro

    题目传送门 1 /* 2 题意:已知起点(1,1),终点(n,m):从一个点水平或垂直走到相邻的点距离+1,还有k个抄近道的对角线+sqrt (2.0): 3 递推DP:仿照JayYe,处理的很巧妙, ...

  8. HDU 5863 cjj's string game ( 16年多校10 G 题、矩阵快速幂优化线性递推DP )

    题目链接 题意 : 有种不同的字符,每种字符有无限个,要求用这k种字符构造两个长度为n的字符串a和b,使得a串和b串的最长公共部分长度恰为m,问方案数 分析 : 直觉是DP 不过当时看到 n 很大.但 ...

  9. 递推DP HDOJ 5459 Jesus Is Here

    题目传送门 题意:简单来说就是sn = sn-1 + sn-2递推而来,求其中所有c字符的:∑i<j:sn[i..i+2]=sn[j..j+2]=''cff"(j−i) mod 530 ...

最新文章

  1. SQLI DUMB SERIES-5
  2. 这几天研究了一下JDK14,发现它处理NPE的方式,真香!
  3. 国庆七天乐 Day5
  4. 7000p壁纸怎么换_这些圣诞壁纸,劝你们马上点开,保存!真的超好看
  5. 10行代码AC——L1-018 大笨钟 (10分)(~解题报告~)
  6. centos rpm mysql 5.6_centos6.5 mysql5.6 RPM安装
  7. 【WPF】获取电磁笔的压感
  8. 即将改变软件开发的5个Java9新特性
  9. https抓包_浅谈HTTPS抓包原理,为什么Charles能够抓取HTTPS报文?
  10. Spring AOP源码分析(四)Spring AOP的JDK动态代理
  11. 利用GSM模块通过GPRS在GMSK调制方式下与IP网通信
  12. 阶段3 3.SpringMVC·_06.异常处理及拦截器_7 SpringMVC拦截器之拦截器接口方法演示
  13. DenseNet算法详解
  14. 使用Python合并excel表格的两列
  15. 北京科技大学计算机考研考试科目,2020考研北京科技大学计算机考研考试科目...
  16. vue - 禁止input[number]输入 +、-、e 符号,并且只能输入两位小数
  17. win7如何设置wifi热点_mac如何共享网络?mac怎么建立wifi热点?
  18. URL编码解码工具类
  19. 【转发重要论文】顶中区N200: 一个中文视觉词汇识别特有的脑电反应
  20. 过滤器、拦截器、AOP、ControllerAdvcie的使用对比、执行顺序及代码教程

热门文章

  1. 量子计算机具有天热的,量子绝热计算
  2. java内存溢出让tomcat停止_java - 使用JVM Open J9一段时间后,应用程序(tomcat)停止响应 - 堆栈内存溢出...
  3. stunnel使用详解
  4. windows网关详解 【了解网关的重要性,增加网络性能】【FreeXploiT综合文】
  5. linux 内核3.8,[Beaglebone] BBB迁移到linux 3.8实时内核
  6. hadoop 计算几点 主节点_01-Hadoop的介绍
  7. a pycharm 标记多个_每周分享五个 PyCharm 使用技巧(二)
  8. ffmpeg php linux,linux(php环境) 安装ffmpeg
  9. x86服务器当虚拟化的存储,龙存科技-软件定义数据中心产品提供商
  10. mysql主从进行扩展_Mysql主从知识扩展部分1