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

Luogu题解:P13594 『GTOI - 1A』Bath

问题分析

初始水温为\(s\),需要保持在\([L,R]\)范围内。有\(n\)个人在不同时刻使用水龙头,会使水温发生变化。同一时刻的水温变化是同时发生的可以在任意时刻调节水温到任意值,目标是最小化调节次数。

思路

  1. 将所有水温变化按时间排序,并将同一时刻的变化合并成一次变化。
  2. 确定水温的可能范围,并不是具体值。
  3. 当水温范围超出可接受范围时,就需要调节水温,将范围重置为可接受范围\([L,R]\)
  4. 每次调节后,继续确定新的水温范围,直到所有变化都处理完。

代码

#include<bits/stdc++.h>
#define ri register int
#define int long long
#define run_fast ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)
using namespace std;
int n, s, L, R;
map<int, int> mp;
signed main() {run_fast;cin >> n >> s;cin >> L >> R;for (ri i = 0; i < n; ++i) {int a, x;cin >> a >> x;mp[a] += x;}int ans = 0,cl = s,ch = s;for (const auto& e : mp) {int d = e.second;cl += d;ch += d;if (ch < L || cl > R) {ans++;cl = L;ch = R;} else {if (cl < L) cl = L;if (ch > R) ch = R;}}cout << ans << endl;return 0;
}
http://www.aitangshan.cn/news/603.html

相关文章:

  • G. ABBC or BACB
  • 第十一届能源材料与电力工程学术会议(ICEMEE 2025)
  • JetBrains WebStorm 2025.2 (macOS, Linux, Windows) - JavaScript 和 TypeScript IDE
  • 牛逼!花了9天,开发了一款一站式智能测试平台:STP!
  • 第八届IEEE机电一体化与计算机技术工程国际学术会议(MCTE 2025)
  • VMware Avi Load Balancer 30.2.4 - 多云负载均衡平台
  • VMware NSX 4.2.3 - 网络安全虚拟化平台
  • JetBrains IDE 2025.2 (macOS, Linux, Windows) - 跨平台开发者工具
  • JetBrains IntelliJ IDEA 2025.2 (macOS, Linux, Windows) - 领先的 Java 和 Kotlin IDE
  • 题解:AT_agc033_e [AGC033E] Go around a Circle
  • 【经管文化主题|高录用快检索】第七届经济管理与文化产业国际学术会议
  • 多线程
  • JetBrains CLion 2025.2 (macOS, Linux, Windows) - C 和 C++ 跨平台 IDE
  • 快消巨头杨掌柜:用纷享销客CRM实现渠道数字化升级
  • Omnissa Unified Access Gateway 2506 - 远程安全的应用程序访问
  • Omnissa Horizon 8 2506 (8.16) - 虚拟桌面基础架构 (VDI) 和应用软件
  • 第七届经济管理与文化产业国际学术会议(ICEMCI 2025)
  • cookie,session,localstorage,sessionstorage一次讲清楚
  • Maven jar上传Nexus教程
  • 7.1组合计数
  • 浅学 FHQ
  • DeepCompare文件深度对比软件:智能文本对比与差异统计功能完全指南
  • 单据上采购数量按3个单位分别显示数量
  • 致敬2025年还在写博客的你
  • MyBatis-Plus
  • 概率论的基础
  • Docker
  • 【IEEE出版】第三届电力、电网和储能国际学术会议(PGES 2025)
  • 记录下MySQL的分区表
  • 从 “JSON 字段适配噩梦” 到 “Spring Boot 优雅解决方案”,你只差这一篇