算法训练 瓷砖铺放 【递归】java
例如,长度为4的地面一共有如下5种铺法:
4=1+1+1+1
4=2+1+1
4=1+2+1
4=1+1+2
4=2+2
编程用递归的方法求解上述问题。
4
5
思路分析:
一开始这个题我想用递归去往一个数组中添加一和二,看是否在某一个时刻,数组内的和为N。这个思路并没有做出来。
参考了网上的代码,发现自己真的很菜。。。 由于这个题不需要输出组成的序列,只输出总的数目即可,所以每次递归是的变量加一或者加二,然后根据回溯法的思想,如果加上一小于等于N则调用pudiban(val+1),如果加上二小于等于N则调用pudiban(val+2),实际上不用判断val是否会超出N,因为在调用这一层函数的时候已经判断过了。
代码:
import java.util.Scanner;public class Main瓷砖铺法 {static Scanner scan = new Scanner(System.in);static int N;static int count = 0;public static void main(String[] args) {N = scan.nextInt();pudiban(0);System.out.println(count);}private static void pudiban(int val) {if (val == N) {count++;return;}if (val + 1 <= N) {pudiban(val + 1);}if (val + 2 <= N) {pudiban(val + 2);}}}
算法训练 瓷砖铺放 【递归】java相关推荐
- 算法训练 瓷砖铺放 递归
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
- 瓷砖铺放 java_算法训练 瓷砖铺放 【递归】java
算法训练 瓷砖铺放 时间限制:1.0s 内存限制:512.0MB 锦囊1 锦囊2 锦囊3 问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为 ...
- java 蓝桥杯算法训练 瓷砖铺放(题解)
试题 算法训练 瓷砖铺放 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限 ...
- [Java] 蓝桥杯ALGO-11 算法训练 瓷砖铺放
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
- 蓝桥杯算法训练 瓷砖铺放JAVA
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
- 蓝桥杯 ALGO-11算法训练 瓷砖铺放(递归/动态规划)
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
- 蓝桥杯 算法训练 瓷砖铺放Python实现(递归)
资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺 ...
- 试题 算法训练 瓷砖铺放
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
- 蓝桥杯 ALGO-11 算法训练 瓷砖铺放
问题描述 有一长度为N(1<=N<=10)的地板,给定两种不同瓷砖:一种长度为1,另一种长度为2,数目不限.要将这个长度为N的地板铺满,一共有多少种不同的铺法? 例如,长度为4的地面一共有 ...
最新文章
- spring aop使用详解
- 多维数据查询效率分析(1)
- JUC并发编程三 并发架构--线程运行原理
- SQL2005中的XXproperty() 函数归纳
- Hybris CronJob.
- 用户体验改善案例_优化用户体验案例研究的五种方法
- linux系统优化篇之---top
- ppt讲解中的过渡_PPT黑科技,只用一张图做出3D动画
- arcgispython空间插值_基于python的空间距离权重计算——arcgis中的arcpy
- 字节跳动 2022 校园招聘研发提前批正式启动!
- 从数据仓库系统对比看Hive发展前景
- 各计算机系统用传输介质互连,计算机网络技术与应用.doc
- POJ--3984--迷宫问题
- 项目管理工具之SWOT分析法
- BUW EMX (Expert Moldbase Extentions) 13.0.2.1 x64 for Creo
- java ffmpge转换,java调用ffmpeg实现视频转换的方法
- JS定时器原理及案例
- UI设计书籍推荐,这三本好书你不能错过
- android 4.4.4最新微信,微信旧版本安卓4.4.4可用
- xx-Pixiv Spider
热门文章
- 算法很美 将整数的奇偶位互换
- 多模块项目-项目复制出现Module xx must not contain source root xx The root already belongs to module xx
- 乐视2(X620)刷机日记
- 关于安卓视频加水印与剪辑功能实现
- STM32F103高级定时器死区时间的计算
- 使用GDAL工具对OrbView-3数据进行正射校正
- mysqli mysql assoc_mysqli_fetch_assoc()期望参数1为mysqli_result或如何获取MySQLi
- 2019网络直播稳中有变:直播带货火出圈 5G带来弯道超车新机会
- 【Web3 系列开发教程——创建你的第一个 NFT(9)】如何在手机钱包里查看你的 NFT
- 89. 格雷编码 Python