news 2026/7/7 15:59:11

算法竞赛备考冲刺必刷题(C++) | 洛谷 P10934 西瓜种植

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
算法竞赛备考冲刺必刷题(C++) | 洛谷 P10934 西瓜种植

本文分享的必刷题目是从蓝桥云课洛谷AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。

欢迎大家订阅我的专栏:算法题解:C++与Python实现!

附上汇总贴:算法竞赛备考冲刺必刷题(C++) | 汇总


【题目来源】

洛谷:P10934 西瓜种植 - 洛谷

【题目描述】

笨笨种了一块西瓜地,但这块西瓜地的种植范围是一条直线的……

笨笨在一番研究过后,得出了m mm个结论,这m mm个结论可以使他收获的西瓜最多。

笨笨的结论是这样的:

从西瓜地b bb处到e ee处至少要种植t tt个西瓜,这个范围的收获就可以最大化。

笨笨不想那么辛苦,所以他想种植的西瓜尽量少,而又满足每一个所得的结论。

【输入】

第一行两个数n nn,m mm0 < n ≤ 5000 0<n \le 50000<n50000 ≤ m ≤ 3000 0 \le m\le 30000m3000),表示笨笨的西瓜地长n nn,笨笨得出m mm个结论。

接下来m mm行表示笨笨的m mm个结论,每行三个数b bb,e ee,t tt1 ≤ b ≤ e ≤ n 1 \le b\le e\le n1ben0 ≤ t ≤ e − b + 1 0 \le t\le e-b+10teb+1)。

【输出】

输出笨笨最少需种植多少西瓜。

【输入样例】

9 4 1 4 2 4 6 2 8 9 2 3 5 2

【输出样例】

5

【算法标签】

《洛谷 P10934 西瓜种植》 #贪心# #差分约束#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;constintN=5005,M=N*3;// 最大顶点数和边数inth[N],e[M],w[M],ne[M],idx;// 链式前向星存储图intdist[N];// 最长距离数组boolst[N];// 标记顶点是否在队列中intn,m;// n: 范围[0,n], m: 区间约束数量/** * 添加有向边 * @param a 起点 * @param b 终点 * @param c 权重 */voidadd(inta,intb,intc){e[idx]=b;// 边指向的顶点w[idx]=c;// 边的权重ne[idx]=h[a];// 指向原链表头h[a]=idx++;// 更新头指针}/** * SPFA算法求最长路径 * 从顶点0开始,计算到所有顶点的最长路径 */voidspfa(){// 初始化距离为负无穷memset(dist,-0x3f,sizeof(dist));memset(st,0,sizeof(st));queue<int>q;// SPFA队列q.push(0);// 起点入队st[0]=true;// 标记在队列中dist[0]=0;// 起点距离为0while(!q.empty()){intt=q.front();// 取出队首q.pop();st[t]=false;// 标记不在队列中// 遍历t的所有邻接边for(inti=h[t];i!=-1;i=ne[i]){intj=e[i];// 邻接顶点// 松弛操作:求最长路径if(dist[j]<dist[t]+w[i]){dist[j]=dist[t]+w[i];// 更新最长距离// 如果j不在队列中,入队if(!st[j]){q.push(j);st[j]=true;}}}}}intmain(){// 输入n和区间约束数量mcin>>n>>m;// 初始化邻接表memset(h,-1,sizeof(h));// 添加基础约束边// 顶点编号0~n,共n+1个顶点for(inti=1;i<=n;i++){// 约束1: S_i - S_{i-1} ≤ 1// 即: S_{i-1} - S_i ≥ -1// 建边: i → i-1,权重-1add(i,i-1,-1);// 约束2: S_i ≥ S_{i-1}// 即: S_i - S_{i-1} ≥ 0// 建边: i-1 → i,权重0add(i-1,i,0);}// 添加区间约束while(m--){intb,e,t;cin>>b>>e>>t;// 约束: S_e - S_{b-1} ≥ t// 即: S_e ≥ S_{b-1} + t// 建边: b-1 → e,权重tadd(b-1,e,t);}// 执行SPFA算法求最长路径spfa();// 输出从0到n的最长路径长度cout<<dist[n]<<endl;return0;}

【运行结果】

9 4 1 4 2 4 6 2 8 9 2 3 5 2 5
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 11:20:16

AI搜索时代,你的品牌还在“隐身”?手把手教你GEO优化

摘要当用户在ChatGPT、文心一言等AI平台询问产品推荐时&#xff0c;高达85%的品牌却因未做针对性优化而“查无此人”&#xff0c;错失宝贵的AI流量。GEO优化正成为AI搜索时代品牌可见度的新战场。本文将从行业现状出发&#xff0c;透彻解析GEO与传统SEO的核心区别&#xff0c;并…

作者头像 李华
网站建设 2026/7/7 7:38:40

Qwen3-0.6B企业级部署实战:从零到生产环境的完整方案

Qwen3-0.6B企业级部署实战&#xff1a;从零到生产环境的完整方案 【免费下载链接】Qwen3-0.6B Qwen3 是 Qwen 系列中最新一代大型语言模型&#xff0c;提供全面的密集模型和混合专家 (MoE) 模型。Qwen3 基于丰富的训练经验&#xff0c;在推理、指令遵循、代理能力和多语言支持方…

作者头像 李华
网站建设 2026/7/7 8:37:34

基于springboot技术的农村电商物流管理系统-计算机毕设源码17109

摘要 随着电子商务的迅速发展&#xff0c;农村地区的物流管理亟需改进和优化。传统的电商物流系统存在配送效率低、信息更新滞后、库存管理不精确等问题&#xff0c;导致消费者和商家之间的沟通不畅&#xff0c;影响了购物体验和订单处理速度。因此&#xff0c;建设一套高效、精…

作者头像 李华
网站建设 2026/7/7 8:03:26

蒙乃尔Monel404具有极佳的耐腐蚀性能NO4404板材 带材 锻件

Monel404&#xff08;NO4404&#xff09;化学成分镍: 52.0-57.0锰: &#xff1e;0.10硅: &#xff1e;0.10钴: &#xff1e;1.00铁: &#xff1e;0.50硫: &#xff1e;0.024碳: &#xff1e;0.15铜: 余量铝: &#xff1e;0.05Monel404特性低磁感应强度高强度极佳的耐腐蚀性能良…

作者头像 李华
网站建设 2026/7/7 7:38:07

适合打工人的 2026 个签:搞笑又治愈

1. “过去的翻篇儿&#xff0c;现在的稳住&#xff0c;未来的随缘&#xff5e;”2. “人生这趟车&#xff0c;上半场瞎忙&#xff0c;下半场躺平看风光&#xff01;”3. “心态到位&#xff0c;烦恼后退&#xff1b;心一放宽&#xff0c;快乐满筐&#xff01;”4. “别盼着别人…

作者头像 李华
网站建设 2026/7/6 3:29:22

Wan2.2-T2V-A14B在宠物训练教学视频中的行为示范

Wan2.2-T2V-A14B在宠物训练教学视频中的行为示范 你有没有遇到过这种情况&#xff1a;想教自家狗狗“坐下”&#xff0c;翻遍全网教程&#xff0c;结果每个视频里的动作节奏都不一样——有的主人喊口令太快&#xff0c;有的狗子屁股还没落地就给零食了……学得一头雾水 &#x…

作者头像 李华