
upc bus 线性dp
发布日期:2021-09-25 23:57:38
浏览次数:0
分类:技术文章
本文共 1399 字,大约阅读时间需要 4 分钟。
bus
时间限制: 1 Sec 内存限制: 128 MB
题目描述
两个球队的支持者要一起坐车去看球,他们已经排成了一列。我们要让他们分乘若干辆巴士,同一辆巴士上的人必须在队伍中是连续的。为了在车上不起冲突,希望两队的支持者人数尽量相等,差至多是D。有一个例外,就是一辆车上的人全部都是一个球队的支持者。问要将这N个人全部送至球场,至少要几辆巴士。
输入
第一行是整数N和D。
接下来一行,按排队的顺序,描述每个人支持的球队,用H或J表示。该行没有任何多余的字符。
输出
一个整数,表示要多少巴士。
样例输入 Copy
14 3
HJHHHJHJHHHHHH
样例输出 Copy
2
提示
对于100%的数据:N,D≤2500,数据有合理的梯度。
状态表示:f[ i ] 表示到第 i 个人需要的最少巴士数量。
状态转移:f[ i ] = min(f[ i ] , f[ j - 1 ] + 1)
转移的条件就是 ( i , j ) 这个区间只需要一辆巴士,那么就可以考虑预处理出每一个区间是否一辆巴士就可以解决。
尝试枚举每个区间,当全是一队人或者两队之差 <= d 的时候即可。
为了优化预处理区间的时候需要每一段区间中两队的人数,可以预处理出前缀和。
好吧,思路和代码完全是反着来的。
#include#include #include #include #include
转载地址:https://blog.csdn.net/DaNIelLAk/article/details/105883029 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
不错!
[***.235.140.84]2022年08月08日 06时23分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
最新文章
什么是数字签名?
2022-02-17
djnago Excel数据上传进度条
2022-02-17
dajngo 前后端传输数据进行加密 RSA加密
2022-02-17
Java异步调用实现并发上传下载SMB共享文件
2022-02-17
Oracle数字格式化
2022-02-17
Windows解决端口占用
2022-02-17
Bootstrap-Modal模态框插件
2022-02-17
Spring Cache简单实现
2022-02-17
Spring Cache缓存注解
2022-02-17
十二学习笔记:第一个scrapy爬虫
2022-02-17
关于Chromedriver如何配置环境变量问题解决!!!!
2022-02-17
在右键新建菜单中添加新项目
2022-02-17
Windows搭建SMB服务
2022-02-17
Java中SMB的相关应用
2022-02-17
Windows生成项目目录结构
2022-02-17
力扣笔记.
2022-02-17
TextCNN_pytorch实现
2022-02-17