洛谷 P1094 [NOIP2007 普及组] 纪念品分组

news2024/11/24 3:44:18

题目背景

NOIP2007 普及组 T2

题目描述

元旦快到了,校学生会让乐乐负责新年晚会的纪念品发放工作。为使得参加晚会的同学所获得 的纪念品价值相对均衡,他要把购来的纪念品根据价格进行分组,但每组最多只能包括两件纪念品, 并且每组纪念品的价格之和不能超过一个给定的整数。为了保证在尽量短的时间内发完所有纪念品,乐乐希望分组的数目最少。

你的任务是写一个程序,找出所有分组方案中分组数最少的一种,输出最少的分组数目。

输入格式

共 n+2 行:

第一行包括一个整数 w,为每组纪念品价格之和的上限。

第二行为一个整数 n,表示购来的纪念品的总件数 G。

第 3∼n+2 行每行包含一个正整数 Pi​ 表示所对应纪念品的价格。

输出格式

一个整数,即最少的分组数目。

输入输出样例

输入 #1

100 
9 
90 
20 
20 
30 
50 
60 
70 
80 
90

输出 #1

6

说明/提示

50% 的数据满足:1≤n≤15。

100% 的数据满足:1≤n≤3×10^4,80≤w≤200,5≤Pi≤w。

思路:

在开始前,先小小的吐槽一下:

一个整数n,表示G?怎么会有这么奇怪的东西?

OK开始正解:

设两个指针,一个头指针,一个尾指针,每次看他们加起来有没有超过w,没超过就头指针++,尾指针--,答案++,超过了就尾指针--,答案++(跟最小的都不行,只能自己一个一组)注意判断条件是l<=r(如果l=r,就是还剩一个,不比了吗?)

AC代码:

#include <bits/stdc++.h>
using namespace std;
int a[300005];
signed main()
{   
    int w,n;
    cin >> w >> n;
    for(int i=0;i<n;i++)
    {
        cin >> a[i];
    }
    sort(a,a+n);
    int l=0,r=n-1,ans=0;
    while(l<=r)
    {
        if(a[l]+a[r]<=w)
        {
            l++,r--;
            ans++;
        }
        else
        {
            r--;
            ans++;
        }
    }
    cout<<ans;
    return 0;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2058506.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RAG Foundry:一个用于增强大语言模型以实现检索增强生成的框架

一、结论写在前面 论文来自Intel Labs。 论文标题&#xff1a;RAG Foundry: A Framework for Enhancing LLMs for Retrieval Augmented Generation 论文链接&#xff1a;https://arxiv.org/pdf/2408.02545 代码&#xff1a;https://github.com/IntelLabs/RAGFoundry 实现检…

这一定是魔法!5个绝招解决苹果微信照片删除了怎么恢复问题

情景一&#xff1a;更新苹果手机系统后&#xff0c;重新打开微信却发现聊天记录中的照片不见了。 情景二&#xff1a;清理微信缓存数据以释放手机空间&#xff0c;再次打开微信发现聊天中的微信照片找不到了。 …… …… 类似于上述的情景在日常生活中时有发生&#xff0c;但…

【数据分享】1929-2024年全球站点的逐日降水量数据(Shp\Excel格式\1万多个站点)

气象数据是在各项研究中都经常使用的数据&#xff0c;气象指标包括气温、风速、降水、湿度等指标&#xff0c;说到常用的降水数据&#xff0c;最详细的降水数据是具体到气象监测站点的降水数据&#xff01; 有关气象指标的监测站点数据&#xff0c;之前我们分享过1929-2024年全…

AI时代的价值盈利②:人工智能将如何改变SaaS应用的定价指标

介绍 随着行业和企业走上人工智能之旅&#xff0c;对每个投资者和商业领袖来说&#xff0c;最紧迫的问题之一是这种变革性技术将如何重塑他们的商业模式。GenAI有望释放巨大的价值&#xff0c;并有可能彻底改变消费者与服务或应用程序的交互方式。虽然它可能会带来巨大的成本&…

热门的蓝牙耳机中,哪种类型更受欢迎?四款热度高的开放式耳机

在如今的耳机市场中&#xff0c;开放式耳机异军突起&#xff0c;成为了众多消费者的新宠。如果你还在为传统入耳式耳机带来的不适而烦恼&#xff0c;那么开放式耳机绝对值得你一试。它不仅能让你在享受音乐的同时&#xff0c;依然可以清晰感知周围环境&#xff0c;保障你的安全…

函数与二元关系在编程中的应用

目录 引言 函数的基本概念与编程应用 二元关系与其在编程中的实现 函数与关系的高级编程应用 总结与应用 引言 函数与二元关系是计算机科学中描述元素间相互作用的核心工具。它们在算法设计、数据库管理、图论及各种建模任务中发挥着不可或缺的作用。掌握函数与二元关系的…

【代码】Swan-Transformer 代码详解(待完成)

1. 局部注意力 Window Attention (W-MSA Module) class WindowAttention(nn.Module):r""" Window based multi-head self attention (W-MSA) module with relative position bias.It supports both of shifted and non-shifted window.Args:dim (int): Number…

汽车的UDS诊断01

UDS(Unified Diagnostic Services):ISO14229中定义了汽车通用诊断协议;ISO15765规定了帧的格式; 1)UDS中的四种帧 UDS中的四种帧:单帧、首帧、流空帧、连续帧 图1 …

美团面试题:new Integer(“127“)和Integer.valueOf(“128“)有什么

&#x1f345; 作者简介&#xff1a;哪吒&#xff0c;CSDN2021博客之星亚军&#x1f3c6;、新星计划导师✌、博客专家&#x1f4aa; &#x1f345; 哪吒多年工作总结&#xff1a;Java学习路线总结&#xff0c;搬砖工逆袭Java架构师 &#x1f345; 技术交流&#xff1a;定期更新…

Windosw下Visual Studio2022编译安装VTK(支持QT),ITK

VTK&#xff08;Visualization Toolkit&#xff09;是一个开源的、跨平台的三维可视化开发库&#xff0c;用于处理和可视化三维数据。它提供了一系列算法和工具&#xff0c;用于创建、操作和渲染复杂的三维图形&#xff0c;并支持多种数据表示方式&#xff0c;包括点、线、面、…

桔子哥/基于云快充协议1.5版本的充电桩系统软件-充电桩系统 -新能源车充电平台源码

基于云快充协议1.5版本的充电桩系统软件 介绍 SpringBoot 框架&#xff0c;充电桩平台充电桩系统充电平台充电桩互联互通协议云快充协议1.5-1.6协议新能源汽车二轮车公交车二轮车充电-四轮车充电充电源代码充电平台源码Java源码 软件功能 小程序端&#xff1a;城市切换、附…

植物神经紊乱也不怕!吃出好心情,饮食调整秘籍大公开

Hey小伙伴们~&#x1f44b; 今天我们来聊聊一个可能听起来有点陌生但又挺常见的健康问题——植物神经紊乱。是不是有时候感觉心跳加速、呼吸不畅、还容易失眠多梦&#xff1f;别怕&#xff0c;除了专业治疗&#xff0c;饮食调整也是超级重要的一环哦&#xff01;&#x1f37d;️…

想要不得痉挛性斜颈?做这六件事!

一、保持良好的坐姿和站姿 长期不正确的姿势会给颈部肌肉带来过大的压力&#xff0c;增加痉挛性斜颈的发病风险。无论是工作还是休息&#xff0c;都要时刻提醒自己保持挺胸抬头、肩膀放松、颈椎正直的姿势。比如&#xff0c;在办公时&#xff0c;调整电脑屏幕的高度和角度&…

2024东湖高新区下半年水测报名开始啦

东湖高新区下半年职称评审水测报名开始啦&#xff0c;报名时间8月3--8月16号&#xff0c;马上报名截止了&#xff01;&#xff01; 请想明年拿证的需要先准备论文和软著 中级工程师职称基本评审条件&#xff1a;1、专科及以上学历2、大学理工类专业3、专科工作满七年&#xf…

【FreeRTOS】队列实验-多设备玩游戏(旋转编码器)

目录 0 前言1 任务1.1 本节源码1.2实验目的1.3实现方案 2 code2.1 创建队列2.2 写队列2.3 创建任务 3 勘误 0 前言 学习视频&#xff1a; 【FreeRTOS入门与工程实践 --由浅入深带你学习FreeRTOS&#xff08;FreeRTOS教程 基于STM32&#xff0c;以实际项目为导向&#xff09;】…

基于SpringBoot+Vu e.js校园疫情防控系统的设计与实现

文章目录 前言具体实现截图详细视频演示技术栈系统测试为什么选择我官方认证玩家&#xff0c;服务很多代码文档&#xff0c;百分百好评&#xff0c;战绩可查&#xff01;&#xff01;入职于互联网大厂&#xff0c;可以交流&#xff0c;共同进步。有保障的售后 代码参考数据库参…

轮换IP与固定IP,如何抉择?

IP地址相信大家都知道&#xff0c;它是标识我们网络身份的重要凭证。从访问网站到数据抓取&#xff0c;都能看到IP地址的身影。那么&#xff0c;轮换IP和固定IP该怎么理解呢&#xff1f;本文将详细介绍这两种IP类型&#xff0c;旨在帮助你根据需求做出合适的选择。 什么是固定I…

VM Ubuntu22.04 ROS2 从头安装

目录 前言安装步骤1 设置编码2 添加ROS2软件源&#xff08;从哪去下载ros2相关软件&#xff09;报错解决方法 3 安装报错解决方法1解决方法2 报错 4 设置环境变量5 Ros2 测试Hello World 发送和监听小海龟键盘控制 成功 Hello World 发送和监听界面成功控制小海龟界面 前言 本…

OpenAI发布微调功能 允许企业客户定制AI模型

当地时间8月20日&#xff0c;OpenAI发布了一项新功能&#xff0c;允许企业客户使用他们自己的公司数据来定制其最强大的模型GPT-4o&#xff0c;这将大大提高应用程序的性能和准确性。此举出台之际&#xff0c;初创企业在人工智能&#xff08;AI&#xff09;产品上面临着日益激烈…

MySQL 高阶三 (索引性能分析)

执行过程 Explain explain select * from student s, course c , student_coure sc where s.id sc.studentid and c.id sc.courseid;EXPLAIN执行计划各字段含义: 【ld】 id相同&#xff0c;执行顺序从上到下; id不同&#xff0c;值越大&#xff0c;越先执行)。 【select_type…