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

北京响应式网站建设费用外链网盘网站

北京响应式网站建设费用,外链网盘网站,中山网上办事大厅,东莞住房和城乡建设网官网题目 又到了一年的末尾,项目组让小明负责新年晚会的小礼品发放工作。为使得参加晚会的同时所获得的小礼品价值相对平衡,需要把小礼品根据价格进行分组,但每组最多只能包括两件小礼品,并且每个分组的价格总和不能超过一个价格上限。…

题目

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

相关文章:

  • 做网站的不给源文件高考志愿网站开发
  • 珠海网站开发公司支持wordpress免费
  • 廊坊网站建设推广什么网站有教做详情页
  • 专业外贸网站制作a标签怎么显示wordpress
  • 网站开发实训的心得网页设计好的网站
  • 网站域名的作用找别人做网站怎么防止后门
  • 烟台网站备案服务商官网
  • wap网站制作怎么做购物网站源码
  • 北京网站建设厂家赵艳红网站建设规划
  • 仿网站后台怎么做凡科送审平台登录入口
  • 做课内教学网站快站建站教程
  • 美食网站制作代码美工网站设计是什么
  • wordpress 字数优化网站找哪家
  • 网站的后台地址毕设DW做网站的过程
  • 嘉兴网站制作套餐江苏优化网站关键词
  • 学生网站作品虚拟主机加RDS安装wordpress
  • 泉州建站方案能用二级域名做网站吗
  • 提交收录网站盐城永祥建设有限公司网站
  • 怀集网站建设网站ico图标怎么做
  • 网站建设工单系统泗塘新村街道网站建设
  • 外卖网站建设可行性分析互联网广告公司排名前十
  • WordPress P站网站开发与设计结课论文
  • 聚美优品返利网站怎么做辽宁做网站的公司
  • 库存网站建设公司建筑公司logo设计大全
  • 糖果果屋网站建设规划书网站 二级分类
  • 建设网站需要的人员及资金陕西省两学一做网站
  • 常州网站建设企业网站制作枫泾网站建设
  • 织梦通用seo网站模板wordpress 插件推荐
  • 网站栏目内容中山大良网站建设
  • 七台河网站制作威海人社app下载官网2022