bzoj 2500 幸福的道路 dfs 单调队列

闲鱼客户端三重动态签名机制解析:x-sign、x-mini-wua与x-umt 在移动客户端安全通信中,设备级动态签名已成为主流App防范自动化攻击的核心手段。其原理是将设备指纹、运行时行为与可信硬件标识深度融合,生成不可复用、不可跨端、不可静态伪造的请求凭证。这类机制超越传统Token或Session鉴权,具备强上下文绑定性与实时熵值校验能力,广泛应用于电商、社交及开放平台等高风险接口场景。技术价值体现在有效识别模拟器、无头浏览器与集群化爬虫,同时保障多端一致性与合规数据对接。本文聚焦闲鱼客户端实际落地的x-sign(带设备上下文的混合签名)、x-mini-wua(小程序行为水印)与 阅读详情

dfs维护一个每个点向下和向上的最长路。
开两个单调队列,单调递增和单调递减,找最后一个不满足条件的点。
注意队首留一个非法的点便于更新。
每次的决策点与之前的决策点取max。

#include <bits/stdc++.h>
using namespace std;
#define N 1100000
#define ll long long
int n,m,top,ans,pos;
int fa[N],st[N],p1[N],p2[N];
vector<int>vec[N],v[N];
queue<int>que;
int q1[N],q2[N],r1,r2,h1,h2;
ll d1[N],d2[N],up[N],val[N],f[N];
int main()
{
    //freopen("tt.in","r",stdin);
    scanf("%d%d",&n,&m);
    for(int i=2;i<=n;i++)
    {
        scanf("%d%lld",&fa[i],&val[i]);
        vec[fa[i]].push_back(i);
        v[fa[i]].push_back(val[i]);
    }
    que.push(1);
    while(!que.empty())
    {
        int t=que.front();que.pop();
        st[++top]=t;
        for(int i=0;i<vec[t].size();i++)
            que.push(vec[t][i]);
    }
    for(int now=top,x;now>=0;now--)
    {
        x=st[now];
        for(int i=0,t;i<vec[x].size();i++)
        {
            t=vec[x][i];
            if(d1[t]+v[x][i]>=d1[x])
            {
                d2[x]=d1[x];p2[x]=p1[x];
                d1[x]=d1[t]+v[x][i];p1[x]=t;
            }
            else if(d1[t]+v[x][i]>=d2[x])
                d2[x]=d1[t]+v[x][i],p2[x]=t;
        }
    }
    for(int now=2,x;now<=top;now++)
    {
        x=st[now];
        up[x]=up[fa[x]]+val[x];
        if(p1[fa[x]]!=x)
            up[x]=max(up[x],d1[fa[x]]+val[x]);
        else up[x]=max(up[x],d2[fa[x]]+val[x]);
    }
    for(int i=1;i<=n;i++)
        f[i]=max(up[i],d1[i]);
    q1[r1=h1=1]=0;q2[r2=h2=1]=0;
    for(int i=1;i<=n;i++)
    {
        while(r1>h1&&f[i]-f[q1[h1+1]]>m)h1++;
        while(r2>h2&&f[q2[h2+1]]-f[i]>m)h2++;
        pos=max(pos,q1[h1]);pos=max(pos,q2[h2]);
        ans=max(ans,i-pos);
        while(r1>h1&&f[i]<=f[q1[r1]])r1--;
        while(r2>h2&&f[i]>=f[q2[r2]])r2--;
        q1[++r1]=i;q2[++r2]=i;
    }
    printf("%d\n",ans);
    return 0;
}
【阿里云大模型高级工程师ACP习题集】2.3 优化提示词改善答疑机器人回答质量 【摘要】这是我精心整理出对应的习题集,里面足足有 30 道题目,从基础概念到深度拓展,全方位覆盖章节重点、难点。不管你是想检验自己的学习成果,还是想针对薄弱环节进行强化训练,它都能完美适配! 阅读详情

相关推荐

benders分解算法 逻辑思路整理(加星)

一般我们经常可以看到的是经典的benders,此处我也结合经典的benders梳理下思路。

sinat_41348401的博客 7988

【考题题解6】稍复杂的模拟 栈+dfs 单调队列

1.无聊的游戏由题意可得,这道题只需要村模拟即可,就是稍微复杂里一点1.循环枚举每一个没死的同学,找到与该同学最近的一个非自身且没有死的同学,然后将其杀掉(标记一下)即可。2.因为给的同学的位置是坐标系的坐标,所以求最近距离是要用上勾股定理,即行列的绝对值之差的平方之和。3.如果一次循环没有把剩下的杀死,那就再循环一次即可。4.如果在模拟的过程中总数为1,那么就找到唯一生存的同学并且输出以及退出循...

Ronaldo7_ZYB的博客 234

Mediapipe手势识别实战——基于关节角度计算实现动态手势分类

本文详细介绍了如何利用Mediapipe进行手势识别,通过计算手指关节弯曲角度实现动态手势分类。文章从基础原理出发,讲解了关节角度计算的数学方法,并提供了Python实现代码。同时,还分享了数字手势和OK手势的识别实战经验,以及性能优化和工程实践中的关键技巧,帮助开发者快速掌握实时手势识别技术。

weixin_26891599的博客 403

【bzoj2500】【幸福的道路】【树形dp+单调队列】

Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他

sunshinezff的专栏 1303

OpenCV实战:从边缘检测到透视校正,打造智能文档扫描仪(Python代码详解)

本文详细介绍了如何使用OpenCV和Python从零开始构建一个智能文档扫描仪。通过边缘检测、透视校正和文字增强等核心技术,将倾斜、模糊的文档照片转换为清晰、方正的高质量扫描图像。文章提供了完整的代码实现和参数调优经验,帮助开发者打造稳定、高效的文档处理工具。

flower的专栏 695

lgv20刷twrp_LG港版v20 root

这是LG港版v20 root,整理了一下有关LG港版v20的官方固件包了,有没有需要的呢,这里把固件包整理一下也是方便大家以后好下载了,因此有一些机友还是不知道在哪里下载官方的rom包,在这里说的固件rom包也就是原版的系统包了,大家可以放心的使用,这些系统包也都是支持线刷的,大家下载下来解压出来根据里面的相关教程来操作就可以了,很简单的,如果你也需要的话就一起来看看吧。软件提示注意!! 此过程会...

weixin_33212263的博客 5387

幸福的道路

Description小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出发都想

peter_zhu01的博客 536

第4节:cesium 0基础发布离线地图(含源码+视频)

cesium发布离线地图

qq_29384639的博客 1597

BZOJ 2500 幸福的道路

题面: 2500: 幸福的道路 Time Limit:20 SecMemory Limit:256 MBSubmit:366Solved:144[Submit][Status][Discuss] Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图...

weixin_30480583的博客 170

电力负荷预测 | 电力系统负荷预测模型(Python线性回归、随机森林、支持向量机、BP神经网络、GRU、LSTM)

电力负荷预测 | 电力系统负荷预测模型(Python线性回归、随机森林、支持向量机、BP神经网络、GRU、LSTM)

天天酷科研的博客 3189

GPU硬件架构与微架构深度解析34-GPU安全架构深度解析

现代GPU不仅是图形处理器,更是高性能计算平台,安全架构设计至关重要。内存加密- 保护数据在传输和存储时的安全安全启动- 确保固件和软件的完整性隔离机制- 防止不同应用间的数据泄露密钥管理- 安全存储和处理加密密钥。

2301_79143213的博客 100

【BZOJ2500】幸福的道路

题目链接:BZOJ 2500 题意:给定一棵树,将树上每个点的最远距离组成的序列记为{an}{an}\left\{a_n\right\},在{an}{an}\left\{a_n\right\}上选出一段连续区间[l,r][l,r]\left[l,r\right],用eee表示{al…r}{al…r}\left\{a_{l\ldots r}\right\}的极差,满足的极差,满足的极差,满足e\l...

ezoixx174的博客 8069

NVIDIA Omniverse 技术浅析(二):USD

例如,一个用户可以负责场景的几何体设计,另一个用户可以负责材质和灯光的调整。USD 的开放性和可扩展性,结合 Omniverse 的 Kit 扩展框架,使得用户和开发者可以创建自定义的应用程序和工具,以满足特定的需求。USD 的材质和物理属性系统,结合 Omniverse 的 RTX 实时渲染技术,使得用户可以在虚拟环境中看到逼真的光影效果和物理模拟。USD 的时间轴和动画功能,结合 Omniverse 的物理属性系统,使得用户可以为虚拟环境中的元素创建复杂的动画和物理模拟。

m0_75253143的博客 446

[BZOJ]2500: 幸福的道路

题解: 题目分为两问 求从每个点出发的最长链           求一段连续最长的区间让极差小于m 对于第一问 显然是树dp 我们考虑对于一个点的最长路径要么从父亲出发 要么是从儿子出发 这就是我们所谓的 "上搞搞下搞搞" 很显然的我们只需要维护从父亲走的最长路和从儿子走的最长路取max即可 我们设从儿子走的最长路径为maxx 从父亲走的最长路径为fmaxx 但是存在一种情况 设...

weixin_30834783的博客 174

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

幸福的道路_bzoj2500_树形dp+单调队列

Description小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出发

olahiuj的博客 634

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

BSOJ3068 BZOJ2500 noip模拟赛 幸福的道路 树的最长链+单调队列 或 RMQ

3068 -- 【模拟试题】幸福的道路 Description 【问题描述】   小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光.   他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图.   他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起

moep0的博客 638

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

bzoj 2500: 幸福的道路

题意: 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出发都想走幸福值和...

fyc的博客 420

[BZOJ 2500] 幸福的道路

照例先贴题面(汪汪汪) 2500: 幸福的道路 Time Limit:20 SecMemory Limit:256 MBSubmit:368Solved:145[Submit][Status][Discuss] Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出...

weixin_30521161的博客 190

【bzoj2500】幸福的道路 单调队列+树形dp

重要的事情说三遍 我是傻逼!!! 我是傻逼!!! 我是傻逼!!! 把%d打成了%lld一直WA 题意坑爹,求从i出发的最长链的长度a[i],求最长的一段a[i],满足最大值-最小值 第一问,树形dp解决 第二问,单调队列解决 #include #include #include #include #include #include #include #define ma

Oxer的专栏 1023

【bzoj2500】幸福的道路 树形dp+单调队列

Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出发都想...

weixin_30564901的博客 151

bzoj2500幸福的道路 树形dp+单调队列

2500: 幸福的道路 Time Limit:20 SecMemory Limit:256 MBSubmit:434Solved:170[Submit][Status][Discuss] Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发...

weixin_30668887的博客 112

【bzoj2500】幸福的道路 【树形dp】【单调队列优化dp】

题目链接 强行拼题。。。 先是经典的树上最长路的树形dp,然后单调队列优化dp就好了。时间复杂度O(n)O(n)O(n)。 怎么树d,我之前好像写过。。。这里的T6就是。 代码 #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;cmath&gt; #include&lt;algorithm&gt; using nam...

2016gdgzoi471 705

●BZOJ 2500 幸福的道路

题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2500 题解: DFS,单调队列 首先有一个结论,距离树上某一个点最远的点一定是树的直径的一个端点。 然后就3个DFS求出直接并得到D[i]数组表示i点到最远的点的距离。 然后就用两个单调队列分别维护一个单减的最大值和一个单增的最小值, 以便求出以i位置结尾...

weixin_30402343的博客 94

(noip模拟二十一)【BZOJ2500】幸福的道路-树形DP+单调队列

Description 小T与小L终于决定走在一起,他们不想浪费在一起的每一分每一秒,所以他们决定每天早上一同晨练来享受在一起的时光. 他们画出了晨练路线的草图,眼尖的小T发现可以用树来描绘这个草图. 他们不愿枯燥的每天从同一个地方开始他们的锻炼,所以他们准备给起点标号后顺序地从每个起点开始(第一天从起点一开始,第二天从起点二开始……). 而且他们给每条道路定上一个幸福的值.很显然他们每次出...

weixin_30892889的博客 214

#单调队列,树形dp#ssl 2443 2570 bzoj 2500 幸福的道路

题目 求 分析 代码 #include &amp;amp;lt;cstdio&amp;amp;gt; #define N 1000001 struct node{int y,w,next;}e[N]; struct rec{int w,num;}d1[N],d2[N]; int ls[N],n,m,q1[N],q2[N]; int in(){ int ans=0; char c=getchar(...

lemondinosaur的博客 327
上一篇: bzoj1895 Pku3580 supermemo splay
下一篇: bzoj 2560 串珠子 状压dp 容斥
make_it_for_good
博客等级 码龄11年 13粉丝 183原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值