Java进阶之欧拉工程 第十五篇【网格路径问题】

网格路径问题,中文翻译如下:

从 22的格子的左上角开始,只允许向右和向下移动,一共有六种路径可以抵达右下角

那么在2020的路径中一共有多少条这样的路径?

原题如下:

Starting in the top left corner of a 22 grid,
and only being able to move to the right and down, there are exactly 6 routes to the bottom right corner.

How many such routes are there through a 2020
grid?

解题思路:

以以上的2X2的格子为例,从起点到达最左边一竖排    ↓

和最上面一横排——>所有的点的路径都为1,其余所有点的到达路径都可以看作左边相邻的点的路径数加上上方相邻点的路径和,这样说起来比较抽象,让我来画一个示意图吧:

这样就很清晰了,对于20X20的表格,其实它的节点正好可以可以做一个21X21的数组,然后通过遍历依次对节点的路径数赋值,最后得到右下角节点的路径数,java代码如下:

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		long[][] jiedian= new long[21][21];
		//在节点便历之前必须先对边线上的节点进行赋值
		for(int i=0;i<21;i++){
			for(int j=0;j<21;j++){
				jiedian[0][j]=1;
				jiedian[i][0]=1;

			}
		}
		for(int m=1;m<21;m++){
				for(int n=1;n<21;n++){
					jiedian[m][n]=jiedian[m-1][n]+jiedian[m][n-1];
				}

		}
		System.out.println(jiedian[20][20]);
	}
}

Java进阶之欧拉工程 第十五篇【网格路径问题】

时间: 2024-10-13 02:39:26

Java进阶之欧拉工程 第十五篇【网格路径问题】的相关文章

Java进阶之欧拉工程 第十五篇【2的1000次方各位之和为多少】

题目如下: 215 = 32768 并且其各位之和为 is 3 + 2 + 7 + 6 + 8 = 26. 21000 的各位数之和是多少? 原题如下: 215 = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26. What is the sum of the digits of the number 21000? 解题思路:这道题和之前的大数求和的思想有点类似,就是用数组存储大数的每一位数,然后相加,上次写的大数相加的函数稍作

我的欧拉工程之路——29

题目29:a的b次方(2≤a,b≤100)中共有多少个不同的数? 考虑 ab 在 2  a  5,2  b  5下的所有整数组合: 22=4, 23=8, 24=16, 25=3232=9, 33=27, 34=81, 35=24342=16, 43=64, 44=256, 45=102452=25, 53=125, 54=625, 55=3125 如果将这些数字排序,并去除重复的,我们得到如下15个数字的序列: 4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243

第十五篇 Integration Services:SSIS参数

本篇文章是Integration Services系列的第十五篇,详细内容请参考原文. 简介在前一篇,我们使用SSDT-BI将第一个SSIS项目My_First_SSIS_Project升级/转换到SSIS 2012.在这一篇,我们将探讨SSIS变量的姊妹:SSIS参数.我们将展示参数配置,通过包参数管理动态属性值,以及在SSIS包执行期间参数是如何配置和使用的.首先在SSDT-BI打开转换过的My_First_SSIS_Project,如图15.1所示:图15.1My_First_SSIS_P

秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题

版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 秒杀多线程第十五篇 关键段,事件,互斥量,信号量的“遗弃”问题 在<秒杀多线程第九篇 经典线程同步总结 关键段 事件 互斥量 信号量>中对经典多线程同步互斥问题进行了回顾和总结,这篇文章对Windows系统下常用的线程同步互斥机制——关键段.事件.互斥量.信号量进行了总结.有网友问到互斥量能处理“遗弃”问题,事件和信号量是否也能处理“遗弃”问题.因此本文将对事件和信号量作个试验,看看事件和信号量能否处理“遗弃”问题. 一.

Python之路【第十五篇】:Web框架

Python之路[第十五篇]:Web框架 Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #!/usr/bin/env python #coding:utf-8   import socket   def handle_request(client):     buf = client.recv(10

第十五篇 和谐

第十五篇  和谐 "和谐"对于整个宇宙来讲至关重要,无论是宇宙自身空间的环境还是万物之间都需要和谐.如果在任何方面或任何领域出现不和谐的因素,就会对宇宙本身及宇宙中的万物带来很大的影响.这种影响大可以使宇宙规律出现混乱,小也会造成宇宙空间中的万物出现变异. 以上讲的这些是针对整个大宇宙背景所作出的描述.从这些真相当中我们可以知道人类世界同样也需要和谐.因为不和谐,我们就无法向上发展.如今人类世界就有很多的空间出现不和谐的因素,这些不和谐的因素一直障碍着整个人类世界的发展.这样的状况,只

NHibernate 过滤器(第十五篇)

NHibernate 过滤器(第十五篇) NHibernate过滤器相当于定义一个非常类似于类和集合上使用的where子句.ISession 中默认是不启用过滤器的,必须通过ISession.EnableFilter()方法显式的启用. 该方法返回被启用的IFilter的实例.这也支持链式操作. 过滤器主要的配置都在映射文件内完成.来看示例: <?xml version="1.0" encoding="utf-8" ?> <hibernate-ma

解剖SQLSERVER 第十五篇 SQLSERVER存储过程的源文本存放在哪里?(译)

解剖SQLSERVER 第十五篇  SQLSERVER存储过程的源文本存放在哪里?(译) http://improve.dk/where-does-sql-server-store-the-source-for-stored-procedures/ 目前我正在扩展OrcaMDF Studio的功能 不单只支持系统表,DMVs 和用户表 而且也要支持存储过程.那很容易,我们只需要查询sys.procedures --或者查询sys.sysschobjs, 因为当SQLSERVER没有在运行的时候我

Egret入门学习日记 --- 第二十五篇(书中 9.16~9.17 节 内容)

第二十五篇(书中 9.16~9.17 节 内容) 对于昨天的关于 List 组件使用的问题,我打算到书中提到List之后,再回头补充. 还有就是 Scroller 的 TileLayout 布局方式,也要去研究一下. 好了,开始按照书中内容一步一步走. 开始 9.16节. 重点: 1.设定TabBar皮肤. 2.设置TabBar布局. 操作: 1.设定TabBar皮肤. 第一步,准备素材! 第二步,创建 exml 文件! 第三步,拖入组件!约束大小! 第四步,增加两个状态 down 和 up.