走方格

问题描述
在平面上有一些二维的点阵。

这些点的编号就像二维数组的编号一样,从上到下依次为第 1 至第 n 行,从左到右依次为第1 至第 m 列,每一个点可以用行号和列号来表示。

现在有个人站在第 1 行第 1 列,要走到第 n 行第 m 列。只能向右或者向下走。

注意,如果行号和列号都是偶数,不能走入这一格中。

问有多少种方案。

输入格式
输入一行包含两个整数 n,m。

输出格式
输出一个整数,表示答案。

样例输入1:

3 4

样例输出1

2

样例输入2:

6 6

样例输出2

0

package 第十一届蓝桥杯;

import java.util.Scanner;

public class 走方格 {
public static void main(String[] args) {
//输入矩阵的宽高
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
sc.close();
int[][] dp = new int[n][m];
dp[0][0]=1;
//这个规律是只能往右下走,也就是只能取左上的值
for (int i=0;i<n;i++){
for(int j=0;j<m;j++){
//第一行一列无需处理
if(i==0 && j==0){
continue;
}
//只要不是第一行就可以取上面的
if(i>0){
dp[i][j]+=dp[i-1][j];
}
//只要不是第一列就可以取左面的
if(j>0){ dp[i][j]+=dp[i][j-1];
}
//如果是偶数行列不能取值,这里是奇数,因为我的是从0开始,所以偶数的就变成了奇数
if((i&1)==1 && (j&1)==1){
dp[i][j]=0;
}
}
}
System.out.println(dp[n-1][m-1]);
}
}

最新文章

  1. Win10 下安装 NodeJS
  2. 固定Table的头部和左边的列-在Knockout Js使用场景下
  3. 解决Win10图片打开方式没有“Windows照片查看器”问题
  4. JAVA获取两个List&lt;String&gt;中不同的数据
  5. 【sinatra】设置默认的端口
  6. 摩托罗拉SE4500 三星 S3C6410 Wince6.0平台软解码调试记录以及驱动相关问题解释
  7. OpenSSH远程拒绝服务漏洞
  8. 启动tomcat后struts框架报异常严重: Exception starting filter struts2 Unable to load configuration. - Class: java.net.PlainSocketImpl
  9. CodeForces 701C They Are Everywhere 尺取法
  10. learn from 德国老师
  11. JQuery插件制作动态网页
  12. 使用VMware Workstation Pro 12 虚拟机安装Mac OS系统教程 全程图解
  13. SpringCloud应用入库后乱码问题
  14. postman-----使用CSV和Json文件实现批量接口测试
  15. asp.net core源码地址
  16. python文件
  17. php -- new self() 和 new static
  18. esxI开启虚拟化
  19. web.xml关于spring的讲解
  20. windows installer 应用变换时的错误.请验证指定的变换路径是否有

热门文章

  1. java代码(15) ---java8 Function 、Consumer 、Supplier
  2. Linux的文件系统及文件缓存知识点整理
  3. 2020最新IDEA插件大集合,一款能帮助你写代码的工具是多么重要
  4. mysql域名解析引起的远程访问过慢?
  5. 50道Java集合经典面试题(收藏版)
  6. LR字符串处理函数-lr_save_int
  7. mysql日期和时间类型
  8. python_lesson1 数学与随机数 (math包,random包)
  9. 破解版BrupSuite安装及其问题解决及环境部署
  10. 这一次搞懂Spring事务是如何传播的