蓝桥杯_算法训练_未名湖畔的烦恼
2,蓝桥杯_算法训练_未名湖畔的烦恼
问题描述
每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求的人(比如都是租鞋或都是还鞋)交换位置是同一种排法)
输入格式
两个整数,表示m和n
输出格式
一个整数,表示队伍的排法的方案数。
样例输入
3 2
样例输出
5
数据规模和约定
m,n∈[0,18]
(1)参考一: http://blog.sina.com.cn/s/blog_164474b4b0102wpcc.html
从最简单的开始举例子,找出规律,发现递归公式,编程。
(2)参考二: https://www.cnblogs.com/liuzhen1995/p/6493068.html 下面是思路
共有m个人还鞋,n个人借鞋,记最终排列数为f(m, n)。
现在求m和n的排队情况,具体理解如下:
起始,要去一人还鞋(PS:此时,m = m - 1),还完后,可以选一人还鞋(PS:m = m - 1)或者一人借鞋(PS:n = n - 1)。
那么,f(m , n) = f(m - 1, n) + f(m, n - 1)。这就是求取f(m, n)的递推公式,那么轻易可知当m < n时,f(m, n) = 0;当n = 0时,f(m, 0) = 1。
(3)My代码
import java.util.Scanner;
public class 未名湖畔的烦恼 { //举例子,找规律,发现是递归,得出递归公式public static void main(String[] args) {Scanner sc=new Scanner(System.in);int m=sc.nextInt();int n=sc.nextInt();//本题使用递归来解决,因为每个位置有两种情况,一种是为借鞋的人,一种是为还鞋的人,所以递归处用//f(m-1,n)+f(m,n-1)System.out.println(f(m,n));}public static int f(int m, int n) {if(m<n) //如果还鞋的小于租鞋的,return返回{return 0;}if(n==0) //当租鞋的人数为0时,便是一个符合要求的排序,数值加1。{return 1;}return f(m-1, n) + f(m, n-1); //调用递归,递归当前为借鞋或者还鞋}
}
蓝桥杯_算法训练_未名湖畔的烦恼相关推荐
- [Java] 蓝桥杯ALGO-122 算法训练 未名湖边的烦恼
问题描述 每年冬天,北大未名湖上都是滑冰的好地方.北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩. 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个.现在 ...
- 蓝桥杯 ALGO-122 算法训练 未名湖边的烦恼
问题描述 每年冬天,北大未名湖上都是滑冰的好地方.北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩. 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个.现在 ...
- 蓝桥杯:算法训练 印章 Python
问题描述 共有n种图案的印章,每种图案的出现概率相同.小A买了m张印章,求小A集齐n种印章的概率. 输入格式 一行两个正整数n和m 输出格式 一个实数P表示答案,保留4位小数. 样例输入 2 3 样例 ...
- 蓝桥杯 试题 算法训练 无聊的逗 C++ 详解
题目: 逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中.不过他想到了一个游戏来使他更无聊.他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘成另一个长的,他想知道在两根一样长的 ...
- 蓝桥杯 试题 算法训练 无聊的逗 C++ 详解 - 未完善
题目: 逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中.不过他想到了一个游戏来使他更无聊.他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘成另一个长的,他想知道在两根一样长的 ...
- 蓝桥杯 试题 算法训练 筛选号码 Java
蓝桥杯 试题 算法训练 筛选号码Java 算法训练 筛选号码 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 有n个人围成一圈,顺序排号(编号为1到n).从第1个人开始报数(从1到3 ...
- 算法刷题系列(四)蓝桥杯python算法训练3(下)
上一次的节点选择算法由于春节过年耽搁了,现在重新补上 上篇链接:算法刷题系列(四)蓝桥杯python算法训练3 - 经验教训 在纷繁复杂的使用了列表来暂存数据之后,发现其实可以利用笔者自己不太常用的字 ...
- 蓝桥杯 试题 算法训练 无聊的逗
蓝桥杯 试题 算法训练 无聊的逗 问题描述 逗志芃在干了很多事情后终于闲下来了,然后就陷入了深深的无聊中.不过他想到了一个游戏来使他更无聊.他拿出n个木棍,然后选出其中一些粘成一根长的,然后再选一些粘 ...
- 蓝桥杯试题 算法训练 绘制地图
蓝桥杯试题 算法训练 绘制地图 问题描述 最近,WYF正准备参观他的点卡工厂.WYF集团的经理氰垃圾需要帮助WYF设计参"观"路线.现在,氰垃圾知道一下几件事情: 1.WYF的点卡 ...
- 蓝桥杯 试题 算法训练 娜神平衡 C++ 详解
问题描述: 娜娜是一个特别可爱的女孩子,作为学神的她最近在情感方面出现了一点点小问题. 她暗恋的琦琦是一名学霸,他只喜欢长得漂亮和学习很好的女生. 娜娜学习确实很神,但是她在琦琦面前却总是表现不出平时 ...
最新文章
- 大型网站技术架构(二)架构模式
- linux降低屏幕亮度,降低屏幕亮度,减缓眼疲劳 (linux/windows/firefox/android)
- 编程之基础:数据类型(二)
- IntelliJ IDEA使用记录
- 为什么工作10年你的工资还不如新来的实习生
- LeetCode精讲题 10正则表达式匹配(动态规划)
- C语言再学习 -- printf、scanf占位符
- boost::describe模块实现打印枚举的测试程序
- vue3 element el-tree 默认选中某个节点高亮
- win7如何不用点击用户名 直接自动登录桌面
- Sybase ASE15.7静默安装
- 损失函数的意义和作用_BN究竟起了什么作用?一个闭门造车的分析
- Swing组件集合的事件处理(三)
- Java经典基础项目——《学生教务系统》立项需求说明书
- 锐龙R3-3100配什么主板
- convolutional LSTM(convLSTM)的pytorch版本代码实现
- CIO40: IT男之日常工作(点线面体)
- 基于PaddleOCR识别火车票信息
- Please ensure you can make a proper https connection to the IAP for TCP hostname:https://tunnel.clou
- 分享快看点助手APK和源代码
热门文章
- ARKit 和 ARCore剖析、结构、原理介绍
- Atitit mysql 存储kv 以及php js接口目录kv_mysql.js 1Set.php 1Get.php 2CREATE TABLE `cfg` ( `k`
- Atitit 提升效率 声明式编程 约束式编程 目录 1. 。 在约束编程中,问题被视为对可能是有效解决方案的一系列限制。	1 2. 常见的约束式编程	2 2.1. 数据库约束 注解	2 2.2.
- Atitit nlp文本挖掘和自然语言处理方面,常用的算法总结 比如tf-idf 目录 1.1. tf:词频,是指某个词在某篇文章中出现的频率	2 1.2. 去停用词算法	2 1.3. idf。
- Atitit. 提升存储过程与编程语言的可读性解决方案v3 qc25.docx
- Atitit.android webview h5运行环境总结
- paip.数据库全文检索 attilax总结
- AIS家电行业供应链管理系统综合分析-零部件订货对应分析需求
- Rust: 用于量化研究的尝试探讨
- 今天,一起吐槽容器镜像中那些让人一言难尽的事情