最短木板长度 - 贪心思维

系列文章目录

文章目录


前言

本人最近再练习算法,所以会发布自己的解题思路,希望大家多指教

一、题目描述

小明有 n 块木板,第 i ( 1 ≤ i ≤ n ) 块木板长度为 ai。 小明买了一块长度为 m 的木料,这块木料可以切割成任意块,拼接到已有的木板上,用来加长木板。 小明想让最短的木板尽量长。 请问小明加长木板后,最短木板的长度可以为多少?

二、输入描述

输入的第一行包含两个正整数,n(1≤n≤10^3), m(1≤m≤10^6);

n表示木板数,m表示木板长度。输入的第二行包含n个正整数,a1,a2,...an(1≤ai≤10^6);

三、输出描述

输出的唯一一行包含一个正整数,表示加长木板后,最短木板的长度最大可以为多少?

四、java代码

java 复制代码
	public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String[] split = scanner.nextLine().split(" ");
        //获取长度为M的木料
        int m = Integer.parseInt(split[1]);
        int[] array = Arrays.stream(scanner.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
        //倒序排序
        Arrays.sort(array);
        for (int i = 0; i < m; i++) {
            //依次从长度M中取出1,加到排序后长度最小的木板上
            array[0]++;
            //重新排序
            Arrays.sort(array);
        }
        System.out.println(array[0]);
    }

五、测试用例

输入:

6 5

3 2 4 6 3 4

输出:

相关推荐
YGGP8 小时前
【Golang】LeetCode 64. 最小路径和
算法·leetcode
TheSumSt8 小时前
Python丨课程笔记Part3:语法进阶部分(控制结构与基础数据结构)
数据结构·笔记·python
古城小栈9 小时前
Rust变量设计核心:默认不可变与mut显式可变的深层逻辑
算法·rust
电商API&Tina9 小时前
跨境电商 API 对接指南:亚马逊 + 速卖通接口调用全流程
大数据·服务器·数据库·python·算法·json·图搜索算法
LYFlied10 小时前
【每日算法】LeetCode 1143. 最长公共子序列
前端·算法·leetcode·职场和发展·动态规划
长安er11 小时前
LeetCode 20/155/394/739/84/42/单调栈核心原理与经典题型全解析
数据结构·算法·leetcode·动态规划·
无限码力11 小时前
华为OD机试双机位C卷 - 结对编程 (C++ & Python & JAVA & JS & GO)
华为od·华为od机考·华为od机试·华为od机试双机位c卷·华为od机考双机位c卷·华为od上机考试·华为od机试-结对编程
MarkHD11 小时前
智能体在车联网中的应用:第28天 深度强化学习实战:从原理到实现——掌握近端策略优化(PPO)算法
算法
能源系统预测和优化研究11 小时前
【原创代码改进】考虑共享储能接入的工业园区多类型负荷需求响应经济运行研究
大数据·算法
yoke菜籽12 小时前
LeetCode——三指针
算法·leetcode·职场和发展