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

智商题

Luogu P13962 [ICPC 2023 Nanjing R] 电梯

https://www.luogu.com.cn/problem/P13962

思维难度很小,但是感觉代码很难写。

运送一堆物品,消耗的电能是这堆物品目标层数的最大值,可以认为只有目标层数最大值的物品才会消耗电能,其他的物品就是“免费”的。我们要让电能最小,就是让的省下的电能尽可能多。

那么可以先运送目标层数大的物品,接下来如果还有空间就继续按照目标层数从大到小塞进去。如果塞完之后发现还有 \(1\) 的空间(称之为“\(1\) 单位缝隙”),就找一个目标层数最大的 \(w=1\) 的物品塞进去。

一开始写的时候用优先队列搞了半天然后超时了,后面发现可以直接先按照目标高度排序,然后扫一遍,对于每一个 \(w=2\) 的物品产生的“\(1\) 单位缝隙”开一个变量 ones_gaps 记录,在 \(w=1\) 时看看能不能塞就可以了。因为是按照高度排序的,所以这个新加进去的 \(w=1\) 物品一定不会对塞进去的电梯电能的计算产生影响。以后做模拟时可以用到这种思想。

一开始的代码:https://www.luogu.com.cn/record/249879315

AC 代码:https://www.luogu.com.cn/record/249885494

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
constexpr int N=1e5+7;
struct Node
{ll c,w,to;// 按楼层从高到低排序bool operator<(const Node &B) const{return to>B.to;}
}a[N];
int n;
ll k,ans=0;
inline ll Alhaitham()
{ans=0;cin>>n>>k;for(int i=1;i<=n;i++) cin>>a[i].c>>a[i].w>>a[i].to;sort(a+1,a+n+1);ll remain=0;        //当前最近一次电梯趟次的剩余空间ll ones_gaps=0;     //无法被重量2利用的“1单位”缝隙数量for(int i=1;i<=n;i++){if(a[i].w==1){if(ones_gaps>0)   //有缝隙给你填充进去{ll amount=min(a[i].c,ones_gaps);a[i].c-=amount;ones_gaps-=amount;}if(a[i].c>0&&remain>0) //填补当前趟次的剩余空间{ll amount=min(a[i].c,remain);a[i].c-=amount;remain-=amount;}//如果还有剩余就新开一个电梯if(a[i].c>0){ans+=(a[i].c+k-1)/k*a[i].to;//这一趟产生的剩余空间if(a[i].c%k==0) remain=0;else remain=k-a[i].c%k;}}else  //处理w=2{//填补当前趟次的剩余空间if(remain>=2){ll amount=min(a[i].c,remain/2);a[i].c-=amount;remain-=2*amount;}//还有剩就新开一个电梯 if(a[i].c>0){//这1单位空间重量2无法利用if(remain==1){ones_gaps++;remain=0;}ans+=(a[i].c*2+k-1)/k*a[i].to;if(a[i].c*2%k==0) remain=0;else remain=k-a[i].c*2%k;}}}return ans;
}int main()
{
//	freopen("neuvillette.in","r",stdin);
//	freopen("neuvillette.out","w",stdout);cin.tie(0)->sync_with_stdio(0);int T;cin>>T;while(T--) cout<<Alhaitham()<<'\n';cout.flush();return 0;
}
http://www.jsqmd.com/news/70912/

相关文章:

  • 2025成都火锅必吃榜,十大网红品牌实力推荐,特色美食/社区火锅/烧菜火锅/美食/火锅成都火锅品牌推荐排行榜 - 品牌推荐师
  • 2025年定制离焦镜标杆厂家推荐:童享OK镜,个性化视光解决方案引领者 - 海棠依旧大
  • Python蓝桥杯第二次学习
  • 2025年本地环氧地坪商家排行,看谁的大理石翻新养护更出色,可靠的大理石翻新养护忠博盛涛保洁专注产品质量 - 品牌推荐师
  • python _—— 使用hash函数实现一种类似字典的简易hash存储结构
  • 基于seekdb,教你从零开始构建智能搜书应用
  • 2025 年堪诺培欧探险乐园创始人最新推荐榜,聚焦技术落地能力与安全运营标准深度解析堪诺培欧探险乐园/丛林穿越攀趣探险核心创始人推荐 - 品牌鉴赏师
  • 2025年12月四川德阳结婚专用挂件、婚庆专用挂件、新婚挂饰、婚庆用品、婚礼摆件厂家深度调研 - 2025年11月品牌推荐榜
  • 2025年ai收银机源头厂家推荐榜单:收银机收款‌/银行收银机‌/餐饮收银机一体机源头厂家精选 - 品牌推荐官
  • 在廊坊婚介所的迷茫与重逢
  • 广州GEO优化服务商全景洞察:技术突围与精准选型指南 - 品牌评测官
  • 详细介绍:知乎知学堂/AGI课堂AI大模型全栈工程师培养计划,【第二期】+【第四期】
  • AI招聘系统选择全指南,AI得贤招聘官核心功能与候选人体验感拉满 - 博客万
  • 2025年砂金机器品牌权威推荐榜单:采金设备/采金机械/采金机器源头厂家精选 - 品牌推荐官
  • 2025 年 12 月实验室规划设计实力推荐:涵盖实验室装修、实验台、通风柜、全流程配套一站式服务,资质齐全 定制省心 安全耐用 - 深度智识库
  • 靠谱法律解决方案权威测评:2026 北京律师实力排行榜 - 苏木2025
  • KETTLE Excel 字段类型转换 - Robot
  • Windows系统-应用问题全面剖析Ⅲ:德承工控机DS-1402在Windows操作系统下[远程控制]设置教程 - Johnny
  • 求推荐!口碑佳、服务优的国内工业级精馏塔源头厂家/品牌与联系方式 - 品牌推荐大师
  • 2025年鸡粉生产线实力厂家权威推荐榜单:鸡精生产线全套设备/全自动配料生产线/全自动制粒干燥生产线源头厂家精选 - 品牌推荐官
  • 成都GEO优化服务市场竞争力测评:核心服务商的技术壁垒与场景适配 - 品牌评测官
  • 国内小型低氘水设备哪个品牌好、实力强?三传一反这个优质供应商实力厂家口碑推荐 - 品牌推荐大师
  • LeeCode 热题100--两数之和
  • 2025 年湖南湘潭排油烟工程厂家最新推荐榜,技术实力与市场口碑深度解析消防工程/洁净工程/恒温恒湿工程/通风工程公司推荐 - 品牌鉴赏师
  • UG NX 2406 安装步骤三维设计神器 一款软件打通设计制造全流程
  • 2025年河南民办大专推荐:聚焦特色专业,赋能职业未来 - 深度智识库
  • 国产家用工业反渗透膜:哪家好?有哪些型号?求推荐及选型指南 - 品牌推荐大师
  • 2025年车铣复合加工订做厂家权威推荐榜单:插针加工厂/电极供货厂/航空插头源头厂家精选 - 品牌推荐官
  • 2025年车铣复合加工订做厂家权威推荐榜单:插针加工厂/电极供货厂/航空插头源头厂家精选 - 品牌推荐官
  • 2025年靠谱学术会议服务公司推荐!学术研讨会/学术年会/学术交流会/学术峰会/合肥学术会议策划公司 - 麦麦唛