首页 > 其他分享 >Longest Path (牛客多校) (换根DP+斜率优化)

Longest Path (牛客多校) (换根DP+斜率优化)

时间:2023-06-15 16:02:06浏览次数:36  
标签:斜率 处理 多校 节点 牛客 Longest 优化 换根 DP

换根dp:

  • 第一次dfs 处理儿子点的权值
  • 第二次dfs 处理 父亲点,和兄弟节点的权值
  • 处理兄弟节点的时候, 利用父亲节点统一处理, 利用stl存储

斜率优化:

  • 为什么会用到斜率优化: 在遇到转移式子是 fi x fj 的时候, 不是分开的, (分开的,直接用单调队列处理) (通常会遇到平方式子)
  • 把i 和 j 的式子分开, 然后 抽象成x y
  • 然后通过题意: 求max, 就是向上的凸包, 求min 就是向下的 凸包
  • 然后要找的那个点利用二分去找就可以了, 找斜率第一个比他大..小的点就可以了
  •  注意开long double

题目大意:

  • 给一个树,给出树的边权,  问每一个节点的最大值
  •  

思路:

  • 换根DP+斜率优化

标签:斜率,处理,多校,节点,牛客,Longest,优化,换根,DP
From: https://www.cnblogs.com/Lamboofhome/p/17483138.html

相关文章

  • 【杂题乱写】6 月西安多校数学专题训练
    这也太难了!这也太难了!这也太难了!DAtCoder-AGC034FRNGandXOR这类无穷游走的期望可以写出转移式子:\[\begin{cases}E_i=0&i=0\\E_i=1+\sum_{j\oplusk=i}E_j\timesP_k&i>0\end{cases}\]\(i>0\)的情况按FWT异或卷积理解就是\(E=E*P+I\),但是放在\(E_0=0\)处不太合适......
  • 【杂题乱写】6 月西安多校数学专题训练
    这也太难了!这也太难了!这也太难了!DAtCoder-AGC034FRNGandXOR这类无穷游走的期望可以写出转移式子:\[\begin{cases}E_i=0&i=0\\E_i=1+\sum_{j\oplusk=i}E_j\timesP_k&i>0\end{cases}\]\(i>0\)的情况按FWT异或卷积理解就是\(E=E*P+I\),但是放在\(E_0=0\)处不太合适......
  • 【考后总结】6 月西安多校模拟赛 1
    6.11冲刺国赛模拟16T3多边形凸多边形说明合法方案中同一种向量必须连续且多种顺序只算一个,因此直接计算各个向量选择的个数。设第\(i\)个向量选了\(c_i\)个,按照两个方向的正负分,可以写作:\[\sum_{x_i>0}c_ix_i=-\sum_{x_i<0}c_ix_i\lem\]\(y\)类似。于是相当于构......
  • Leetcode Hot 100 & 128. Longest Consecutive Sequence
    参考资料:考点:哈希&[题干]Input:nums=[100,4,200,1,3,2]Output:4Explanation:Thelongestconsecutiveelementssequenceis[1,2,3,4].Thereforeitslengthis4.做的时候冥思苦想了半天,因为这个题目要求是O(n)的解法,后来看到题解的时候还一度怀......
  • 多校园微社区交友及二手物品论坛小程序源码运营需要什么?
    在大学校园里,存在着很多的二手商品,但是由于信息资源的不流通以及传统二手商品信息交流方式的笨拙,导致了很多仍然具有一定价值或者具有非常价值的二手商品的囤积,乃至被当作废弃物处理。现在通过微信小程序的校园二手交易平台,可以方便快捷的发布和交流任何二手商品的信息,并且可以通过......
  • 牛客网刷题一
    牛客网FPGA题库刷题之快速入门题库(一)1~8题第一题题目链接:四选一多路器代码:`timescale1ns/1nsmodulemux4_1(input[1:0]d1,d2,d3,d0,input[1:0]sel,output[1:0]mux_out);//*************code***********//reg[1:0]mux_out_tmp;always@(*)begin......
  • 牛客小白月赛73
    A最小的数字#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongint32_tmain(){ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);intn;cin>>n;cout<<((n+2ll)/3ll)*3ll<<"\n";......
  • 牛客想开了大赛2 题解
    题目链接:https://ac.nowcoder.com/acm/contest/907#question A.【六】平面公式:(n*n+n)/2+1,n为直线数目B.【一】n的约数枚举质因子和每个质因子的个数,显然个数肯定从多到少。#include<bits/stdc++.h>typedeflonglongll;usingnamespacestd;constintmx=1e4+10;in......
  • leetcode 409. Longest Palindrome
    Givenastringwhichconsistsoflowercaseoruppercaseletters,findthelengthofthelongestpalindromesthatcanbebuiltwiththoseletters.Thisiscasesensitive,forexample"Aa"isnotconsideredapalindromehere.Note:Assumethelength......
  • leetcode 674. Longest Continuous Increasing Subsequence
    Givenanunsortedarrayofintegers,findthelengthoflongestcontinuousincreasingsubsequence(subarray).Example1:Input:[1,3,5,4,7]Output:3Explanation:Thelongestcontinuousincreasingsubsequenceis[1,3,5],itslengthis3.Eventhough[1,3,5......