当前位置: 首页 > news >正文

ppt网站模板域名代理商

ppt网站模板,域名代理商,北京软件培训机构前十名,网站 无限下拉题目 又到了一年的末尾,项目组让小明负责新年晚会的小礼品发放工作。为使得参加晚会的同时所获得的小礼品价值相对平衡,需要把小礼品根据价格进行分组,但每组最多只能包括两件小礼品,并且每个分组的价格总和不能超过一个价格上限。…

题目

又到了一年的末尾,项目组让小明负责新年晚会的小礼品发放工作。为使得参加晚会的同时所获得的小礼品价值相对平衡,需要把小礼品根据价格进行分组,但每组最多只能包括两件小礼品,并且每个分组的价格总和不能超过一个价格上限。为了保证发放小礼品的效率,小明需要找到分组数目最少的方案。
你的任务是写一个程序,找出分组数最少的分组方案,并输出最少的分组数目。
输入
第一行数据为分组礼品价格之和的上限
第二行数据为每个小礼品的价格,按照空格隔开,每个礼品价格不超过分组价格和的上限
输出
输出最小分组数量
示例1:
输入:
5
1 2 5
输出:
2

思路

最多只能分两个礼品,要求最小方案数。先将输入nums按从小到大排序,以数据为例:1 2 3 3 5 8(假设不超过8),让left指向第一个礼物1,right指向最后一个礼物8
计算当前礼物价值:8+1=9,超过限制,8只能单独分一组,right- -,res=1
left=1,right=5,和为6,可以分为一组,left++,right- -,res=2
left=2,right=3,可以分为一组,left++,right- -,res=3
left=3,right=3,指向的同一个值,单独分一组即可,res=4
上述过程可以用队列或者双指针模拟实现。

题解

package hwod;import java.util.Arrays;
import java.util.LinkedList;
import java.util.Scanner;public class GiftGroup {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int max = sc.nextInt();sc.nextLine();int[] nums = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();System.out.println(giftGroup(nums, max));System.out.println(giftGroup2(nums, max));}private static int giftGroup(int[] nums, int max) {Arrays.sort(nums);LinkedList<Integer> queue = new LinkedList<>();for (int num : nums) {queue.addLast(num);}int res = 0;while (queue.size() > 1) {int cur = queue.peekLast() + queue.peekFirst();queue.removeLast();if (cur <= max) {queue.removeFirst();}res++;}return queue.isEmpty() ? res : res + 1;}private static int giftGroup2(int[] nums, int max) {Arrays.sort(nums);int left = 0, right = nums.length - 1, res = 0;while (left < right) {int cur = nums[right] + nums[left];right--;res++;if (cur <= max) {left++;}}return left==right?res+1:res;}
}

推荐

如果你对本系列的其他题目感兴趣,可以参考华为OD机试真题及题解(JAVA),查看当前专栏更新的所有题目。

http://www.yayakq.cn/news/526296/

相关文章:

  • 大理住房和城乡建设局网站网站建设的方案费用
  • 网站后台建设编辑器济南网站优化技术厂家
  • 网站建设管理和维护关键词查找工具
  • wordpress站点版权设置ai绘制logo
  • 网站开发用到的研究方法建设大型网站制作品牌
  • 企业门户网站建设方案后台管理青岛硅谷网站建设公司
  • 网站空间网站备案 法人代表
  • 网易做相册旅游网站开发公司起名大全
  • 建一个网站需要做什么的鸿蒙系统app开发
  • 网站开发与设计实训总结网店设计是做什么的
  • 17网站一起做网店河北网站建设的课程设计
  • 厚瑜珠海网站建设建网站公司成都
  • 菏泽市城乡建设局网站软件开发各阶段时间比例
  • 达州北京网站建设东莞东城医院
  • 长沙正规制作网站公司什么网站可以做行测
  • 做网站的如何说服客户网站维护主要做什么
  • 模板建网站哪个品牌好wordpress现在流行吗
  • 外贸在什么网站做室内装潢
  • 简述网站的制作步骤国外产品代理网
  • 豪圣建设项目管理网站教育培训网站建设ppt
  • 没有网站怎样做搜索引擎推广北京写字楼装修公司
  • 设计师推荐网站开发公司工程部管理制度
  • 购物网站开发实战化工材料 技术支持 东莞网站建设
  • 一键建站公司wordpress手机主题mip
  • 安庆市建设局网站首页网站制作用什么软件
  • 英文网站如何做关键词网站制作评分标准
  • 网站建设中常用的技术有哪些烟台开发区人才网官网
  • 九江网站设计公司优设网app安卓下载
  • 集团网站建设价格珠海专业网站制作公司
  • 纯静态网站部署服务器wordpress修改wpadmin