zoukankan      html  css  js  c++  java
  • 【力扣】跳水板

    你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为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

    public int[] divingBoard(int shorter, int longer, int k) {
            if (k == 0){
                return new int[]{};
            }
    
            if (shorter == longer) {
                return new int[]{shorter * k};
            }
    
            //注意,不需要判重,因为根本不可能有重复的结果!!!!
            //这里要想明白为啥是k+1 的长度
    
            //举例:
            // shorter * k , shorter * (k -1) + longer * 1 ... ...  shorter * 1 + longer * (k-1) + longer * k
            // 单看shorter一共有 k次 出现在这个式子里,最后一次没有
            // 又因为前提已经确认 shorter <  longer 所以一共是k+1 次
    
            int [] resultInfo = new int[k+1];
            for (int i = 0 ; i < k+1; i++){
                resultInfo[i] = (shorter * (k-i)  + longer * i);
            }
            return resultInfo;
    
        }
    一个入行不久的Java开发,越学习越感觉知识太多,自身了解太少,只能不断追寻
  • 相关阅读:
    洛谷 P2023 BZOJ 1798 [AHOI2009]维护序列
    洛谷 P1640 BZOJ 1854 [SCOI2010]连续攻击游戏
    洛谷 P4300 BZOJ 1266 [AHOI2006]上学路线route
    洛谷 P1886 滑动窗口
    洛谷 P1063 能量项链
    洛谷 P1156 垃圾陷阱
    洛谷 P1854 花店橱窗布置
    洛谷 P3800 Power收集
    洛谷 P2285 BZOJ 1207 [HNOI2004]打鼹鼠
    day31
  • 原文地址:https://www.cnblogs.com/fengtingxin/p/13265095.html
Copyright © 2011-2022 走看看