
SSLOJ2570 2016年提高组模拟题(20161111) 幸福的道路(race)
发布日期:2021-05-07 09:40:58
浏览次数:21
分类:精选文章
本文共 1856 字,大约阅读时间需要 6 分钟。
Description
小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光.他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图.他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出发都想走幸福值和最长的路线.他们不愿再经历之前的大起大落,所以决定连续几天的幸福值波动不能超过M.他们想知道要是这样的话他们最多能连续锻炼多少天(hint:不一定从第一天一直开始连续锻炼)?现在,他们把这个艰巨的任务交给你了!
Input
第一行包含两个整数N, M(M<=10^9).第二至第N行,每行两个数字Fi , Di, 第i行表示第i个节点的父亲是Fi,且道路的幸福值是Di.
Output
最长的连续锻炼天数
思路
啊long longTLE int AC,BZOJ2500**%$%(^
首先看树状dp,我们先一步dfs,求出每个点只能往下走的最长路和次长路及最长路的下一个位置。
再来一次dfs,这里我们处理能够从上面走另一条路的情况。我们使用其父节点的最长路,如果其最长路经过了该节点则使用次长路,对最长路进行更新。接下来是单调队列,每次入队一个,然后排出不符合条件的情况,具体使用2个单调队列,一个最大一个最小,出队的是距离现在位置更远的那一个(正确性显然),然后求长度最大值,输出,完事
code:#include#include #include #include #include #include
发表评论
最新留言
不错!
[***.144.177.141]2025年04月13日 03时06分00秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
深入探索Android热修复技术原理读书笔记 —— 热修复技术介绍
2021-05-09
Python大神编程常用4大工具,你用过几个?
2021-05-09
centos7一步一步搭建docker jenkins 及自定义访问路径重点讲解
2021-05-09
【Flink】Flink 底层RPC框架分析
2021-05-09
MySQL错误日志(Error Log)
2021-05-09
oracle使用DBMS_RANDOM包生成随机数据
2021-05-09
C++高精度模板
2021-05-09
解决:angularjs radio默认选中失效问题
2021-05-09
windows环境下安装zookeeper(仅本地使用)
2021-05-09
缓冲区溢出实例(一)--Windows
2021-05-09
Badboy录制脚本时,提示脚本错误的解决方法
2021-05-09
PHP一句话木马小总结与SQL语句写一句话木马
2021-05-09
关于计数排序
2021-05-09
Python中字符串前添加r ,b, u, f前缀的含义
2021-05-09
Hadoop学习笔记—Yarn
2021-05-09
JSONPath小试牛刀之Snack3
2021-05-09
Jenkins - 部署在Tomcat容器里的Jenkins,提示“反向代理设置有误”
2021-05-09
2017年前端框架、类库、工具大比拼
2021-05-09