程序员面试金典 - 面试题 16.11. 跳水板(数学)
1. 题目
你正在使用一堆木板建造跳水板。
有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer。
你必须正好使用 k 块木板。编写一个方法,生成跳水板所有可能的长度。
返回的长度需要从小到大排列。
示例:
输入:
shorter = 1
longer = 2
k = 3
输出: {3,4,5,6}提示:
0 < shorter <= longer
0 <= k <= 100000
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/diving-board-lcci
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
2. 解题
- 这题非常简单,要读清楚题目,不需要知道中间可能的长度,一开始还动态规划。。。
- 需要使用 k 块板子,短的 k-i 块,长的 i 块不就行了吗,i 从 0 到 k,k+1 种可能
class Solution {public:vector<int> divingBoard(int shorter, int longer, int k) {if(k == 0)return {};if(shorter == longer)//相等只有一种可能return vector<int> ({k*shorter});vector<int> ans(k+1);int i, j = 0;for(i = 0; i <= k; ++i){ans[j++] = shorter*(k-i)+longer*i;}return ans;}
};
程序员面试金典 - 面试题 16.11. 跳水板(数学)相关推荐
- [Leetcode][程序员面试金典][面试题16.11][JAVA][跳水板][数学][动态规划]
[问题描述][简单] [解答思路] 边界问题 k=0 ,不能产生跳水板,返回空数组 shorter 等于longer,只有一种跳水板,返回longerk 思路 一般情况,k块木板,k种可能 跳水板的长 ...
- 程序员面试金典 - 面试题 16.03. 交点(数学)
1. 题目 给定两条线段(表示为起点start = {X1, Y1}和终点end = {X2, Y2}),如果它们有交点,请计算其交点,没有交点则返回空值. 要求浮点型误差不超过10^-6.若有多个交 ...
- 程序员面试金典 - 面试题 10.11. 峰与谷
题目难度: 中等 原题链接 今天继续更新程序员面试金典系列, 大家在公众号 算法精选 里回复 面试金典 就能看到该系列当前连载的所有文章了, 记得关注哦~ 题目描述 在一个整数数组中,"峰& ...
- java兰顿蚂蚁解题思路_程序员面试金典 - 面试题 16.22. 兰顿蚂蚁(deque模拟)
1. 题目 一只蚂蚁坐在由白色和黑色方格构成的无限网格上. 开始时,网格全白,蚂蚁面向右侧. 每行走一步,蚂蚁执行以下操作. (1) 如果在白色方格上,则翻转方格的颜色,向右(顺时针)转 90 度,并 ...
- 程序员面试金典 - 面试题 16.16. 部分排序(排序/不排序)
文章目录 1. 题目 2. 解题 2.1 排序 2.2 不排序 1. 题目 给定一个整数数组,编写一个函数,找出索引 m 和 n ,只要将索引区间 [m,n] 的元素排好序,整个数组就是有序的. 注意 ...
- 程序员面试金典 - 面试题 16.22. 兰顿蚂蚁(deque模拟)
1. 题目 一只蚂蚁坐在由白色和黑色方格构成的无限网格上. 开始时,网格全白,蚂蚁面向右侧. 每行走一步,蚂蚁执行以下操作. (1) 如果在白色方格上,则翻转方格的颜色,向右(顺时针)转 90 度,并 ...
- 程序员面试金典 - 面试题 16.09. 运算(只用+法做乘除)
1. 题目 请实现整数数字的乘法.减法和除法运算,运算结果均为整数数字, 程序中只允许使用加法运算符和逻辑运算符,允许程序中出现正负常数,不允许使用位运算. 你的实现应该支持如下操作: Operati ...
- 程序员面试金典 - 面试题 16.24. 数对和(双指针/哈希map)
文章目录 1. 题目 2. 解题 2.1 排序+双指针 2.2 哈希map 1. 题目 设计一个算法,找出数组中两数之和为指定值的所有整数对.一个数只能属于一个数对. 示例 1: 输入: nums = ...
- 程序员面试金典 - 面试题 10.11. 峰与谷(排序/不排序)
1. 题目 在一个整数数组中,"峰"是大于或等于相邻整数的元素,相应地,"谷"是小于或等于相邻整数的元素. 例如,在数组{5, 8, 2, 6, 3, 4, 3 ...
最新文章
- UIAlertview改变按钮位置 大小
- 初级搭建博客mysql_mysql 初级命令学习2
- c++17(9)-多参数列表
- JDK 9中不推荐使用Java的Observer和Observable
- mysql5.7.24 安装步骤_MySQL5.7.24解压版安装步骤
- Node.js Net 模块
- ajax ashx session 为空,jquery ajax post 方式ashx文件取不到值。
- canvas转盘抽奖的实现(二)
- Codeforces 436D Pudding Monsters
- VMWare网络连接方式与设置
- JVM 完整深入解析
- UVa 106 Fermat vs. Pythagoras(毕达哥拉斯定理)
- ChatGpt会替代码农可行性分析
- php账单明细功能怎么实现,php 处理微信账单
- 实现windows与ubuntu的之间的复制与粘贴
- RISC-V 指令详解
- 用友携YonSuite亮相云栖大会,全方位生态合作再提速
- 网站被K(降权)了怎么办?不妨试试这些方法
- 2021CCPC河南省赛赛后总结(终于拿金了呜呜呜)
- ESP8266学习笔记(1)——搭建环境、编译烧写(NONOS SDK)