SDUT-3924 疯狂的bLue

news/2025/3/14 1:04:16/

疯狂的bLue

Time Limit: 1000MS Memory Limit: 65536KB

Problem Description

众所周知神秘的 ACM 实验室有一个史诗级的出题狂魔,名曰 bLue。最近 bLue 又露出了邪恶的笑,原来是 bLue 接了为校赛出题的单子。

距离校赛开始还有 N 小时,由于各种奇怪的原因出题组可以出题的时间并不固定,大致可以分为M个时间段。每个时间段可以出的题目数也可能不同。同时由于出题是个煞费心血的事情,所以每个出题时间段结束后,善良的 bLue 会让大家休息 R (1 ≤ R ≤ N ) 小时,以便为接下来的出题事业继续奋斗。

为了能为校赛准备尽可能多的题目以备不时之需,bLue 需要好好地规划好这 N 小时如何安排,当然作为唯一的长者,bLue 一下子就为大家规划好了如何安排出题的时间段。

现在 bLue 想考考你在他完美的安排下出题组最多可以出多少个题目?

Input

测试数据有多组,输入直到文件结束。

对于每组数据:

  • 第一行输入三个数 N (1 ≤ N ≤ 1,000,000), M (1 ≤ M ≤ 1,000), R (1 ≤ R ≤ N)
  • 接下来有 M 行输入,每一行输入三个数 Si (0 ≤ Si < N), Ei (Si < Ei ≤ N) ,Vi (1 ≤ Vi ≤ 1,000,000) (0 < i <= M),分别表示为第 i 个时间段的开始时间,第 i 段的结束时间,第 i 个时间段可以出的题目数

Output

对于每组数据,输出出题组最多可以出的题的数目。

Example Input

15 5 3
1 4 5
6 9 4
3 5 2
7 10 8
11 15 2

Example Output

13

Hint

假设出题组在第 5 小时出完了一个时间段的题,他们需要休息 3 小时 (R = 3),那么他们在第 8 小时又可以继续开始出题了。

Author

「“师创杯”山东理工大学第九届ACM程序设计竞赛 热身赛」Ninaye
#include <bits/stdc++.h>
using namespace std;
typedef long long L;//自定义长整形
L ans,Max,dp[1111];
struct node
{int a;int b;int c;
} x[1111],t;
bool cmp(node aa,node bb)
{if(aa.b==bb.b)return aa.a<bb.a;return aa.b<bb.b;
}
int main()
{int n,i,m,r;while(scanf("%d%d%d",&n,&m,&r)!=EOF){for(i=0; i<m; i++){scanf("%d%d%d",&x[i].a,&x[i].b,&x[i].c);}sort(x,x+m,cmp);ans = dp[0] = x[0].c;for(int i = 1; i < m; i++)//DP{Max = 0;for(int j = 0; j < i; j++){if(x[j].b+r <= x[i].a)Max = max(Max,dp[j]);}dp[i] = Max+x[i].c;ans = max(ans,dp[i]);}printf("%lld\n",ans);}return 0;
}



http://www.ppmy.cn/news/386935.html

相关文章

Python编程之路----day2

Python开发IDE(Integrated Development Environment): PyCharm、Eclipse 1.Python运算符 运算结果是值1.算术运算a 10 * 10print(a)1002.赋值运算a 11a a 1 或 a 1print(a)12运算结果是布尔值1.比较运算a 1 > 5print(a)False2.逻辑运算a 1 > 6 or 1 1prin…

【java项目】全程无水分,Java老师带你实践,教你一小时做出java坦克大战游戏

游戏介绍&#xff1a; 保留了射击类游戏的操作性&#xff0c;也改进了射击类游戏太过于复杂难玩的高门槛特点&#xff0c;集休闲与竞技于一身。经典再度袭来&#xff0c;流畅的画面&#xff0c;疯狂的战斗&#xff0c;让玩家再次进入疯狂坦克的世界。玩家的目标是控制坦克躲避危…

【Unity】 坦克寻路

这是一篇残缺不全的记录…… Unity寻路所有的资料大概都是NavMesh吧。本来这一块跟我没啥关系&#xff0c;后来队友告诉我&#xff1a;NavMesh没法模拟坦克的转向。 我也不知道是怎样勇气打算试一下机器学习&#xff1f;反正最后凉了想看解决方法的散了吧…… 配环境啥的都不…

美到极致是疯狂

这是今天和校招新同事交流时的总结&#xff0c;希望校招新同事能够回顾&#xff0c;也能够写出自己的总结。 一、什么是代码高手&#xff1f;你怎么证明自己是代码高手&#xff1f; 知道许多代码技巧、JS炫彩技巧的人大有人在。你知道多少个.net函数&#xff0c;这一点都没有意…

坦克大战游戏Java网络版设计

目 录 1.引言 1 2.系统分析 2 2.1需求和技术分析 2 2.2功能分析 2 3.总体设计 2 3.1总体功能 2 3.2坦克大战总体流程图 4 4.详细设计 5 4.1面板功能设计 5 4.2子弹功能设计 8 4.3坦克功能设计 9 4.4服务器设计 10 4.5客户端设计 13 5. 游戏测试 15 5.1 测试方法 15 5.2 系统测试…

Cocos2d游戏源码下载分享

对于很多新手来说&#xff0c;学习游戏开发不仅需要大量的技术文档、教程支持&#xff0c;我觉得一个完整的游戏源码那也是必须的&#xff0c;毕竟实践出真知嘛&#xff01;遥想当年&#xff0c;为了完成大学每学期的工程实践课程&#xff0c;花了好多时间在网上收刨各种学习资…

python小游戏————坦克大战

目录 一、需求分析 二、系统分析 主类&#xff1a; 坦克类&#xff08;包含我方坦克&#xff0c;敌方坦克&#xff09; 子弹类 爆炸类 三、代码功能实现 五、总代码&#xff1a; 一、需求分析 坦克大战是儿时经常玩的一个游戏&#xff0c;没想起它&#xff0c;脑子里…

《Unity入门案例-Tanks坦克大战》2-场景设置

2 场景设置 2.1 本节效果预览 2.2 项目目录设置 点击Project面板的Create按钮,在根目录下面新建wm文件夹 Wm文件夹用于存放我们自己生成的Prefab和脚本等其他资源,主要是与Tanks项目原始资源和素材做区分. Wm文件夹下面有三个子文件夹 Prefabs用于存放我们自己定义的预设体…