5.29 SD省队培训D1

自闭的一天

T1 梦批糼

先咕一咕(两天之内一定补上)

T2 等你哈苏德

继续咕(一星期之内补上)

T3喜欢最最痛

四十分做法:

首先,我们发现同一个点加两条额外边是一件非常蠢的事,然后同时,加额外边也同时意味着讲这两个点在树上的路径长度用当前权值代替.那么题目就转化成了对与每个\(k\in[0,m]\)求出树上的边不相交(因为上面说了,相交是一件很蠢的事)的\(k\)条路径的最大和.
我们考虑\(dp\),因为点不相交就贪心,有点类似noip2018D1T3
设\(dp_{i,j0/1}\)表示在以\(i\)为跟的子树中,选了\(k\)条路径,能\((1)\)否\((0)\)向上延伸的最大路径之和.
所谓向上延伸,画张图理解一下

红色为我们选择的边左图是不可延伸,而右图可以延伸。
那么知道了这个之后我们想一想该怎么转移

\(dp_{x,u + v,0} = max(dp_{x,u,0}+dp_{y,v,0},dp_{x,u,1} + dp_{y,v + 1,1} + e[i ].data)y\in son_x\)

首先第一个是当\(x\)与\(y\)都没有链头的时候(我们称能否向上延伸为链头),肯定是可以结合的
第二个是两个都有链头,但是两条合并时,总的链数就会减一,而这个减一只能在儿子那上面去减.因为如果减到父亲上会影响之后的DP转移

\(dp_{x,u + v,1} = \max(dp_{x,u,0}+dp_{y,v,1} + e[i].data,dp_{x,u,1} + dp_{y,v,0})\)

转移1时也分两种情况,首先是看看链头在那上面即可

5.29 SD省队培训D1的更多相关文章

  1. 8.6培训 D1

    今天是赵和旭老师讲课(也是 zhx) 动态规划 利用最优化原理把多阶段过程转化为一系列单阶段问题,利用各阶段之间的关系,逐个求解(有点像分治?) 更具体的,假设我们可以计算出小问题的最优解,那么我们凭 ...

  2. 【瞎扯】我的OI之路

    这里大概是一些我自己对我的OI之路的一些记录. 2015.11不知道哪一天-- 我听说了"编程". 当时还不懂得啥是信息学竞赛,以为这只是纯粹的程序设计.后来才明白信息学竞赛是算法 ...

  3. 我的$OI$

    我只是懒得写日记啦\(\color{pink}{qwq}\) //11月8日 啊--终于要\(NOIp\)了,为此期盼了好久.紧张了好久的我,不知道会迎来怎样的结果. 我只知道这段回忆是值得保留封存的 ...

  4. HDU 5499:SDOI

    SDOI Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Sub ...

  5. $NOIp$前的日常

    嗯,一想到没准今年\(NOIp\)之后就要退役了,觉得没准这篇博客就是我OI史上的绝唱了-- \(hhh\),希望不会这样. \(12.4\) 退役了是真的233-- 居然感到一身轻松啊qwqwq \ ...

  6. tcpreplay,tcprewrite的使用---张子芳

    [关键字]: tcpreplay, tcpprep, tcprewrite, libpcap, winpcap, linux, windows, cygwin[摘要]: 本文总结了tcpreplay的 ...

  7. SQL Server常见基础操作

    1. 常见针对表的操作(增删改查) --1. Create Table USE [MVC_000] CREATE TABLE T_TableName ( ID ,) PRIMARY KEY, Name ...

  8. QQ2013登录报文简单分析(不可用于非法用途)

    [NO.1 2013-05-08 00:31:16 046 SEND 115字节]02 31 03 08 25 27 B5 88 6F 91 D2 03 00 00 00 0101 01 00 00 ...

  9. 黑盒测试用例设计方法&理论结合实际 -> 判定表驱动法

    一. 概念 判定表是分析和表达多逻辑条件下执行不同操作的情况的工具. 二. 判定表驱动法的应用 判定表的优点: a. 能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏.因此,利用判定表能 ...

随机推荐

  1. es6中的(=>)箭头函数

    x => x * x 上面的箭头函数相当于: function (x) { return x * x; } 箭头函数相当于匿名函数,并且简化了函数定义. 箭头函数有两种格式,一种像上面的,只包含 ...

  2. day40-Spring 02-事务的回顾

  3. switch范围判断

    <?php function grade($grade){ switch (true) { case $grade>=90: echo 'A'; break; case $grade> ...

  4. AtCoder Regular Contest 082 D Derangement

    AtCoder Regular Contest 082 D Derangement 与下标相同与下个交换就好了.... Define a sequence of ’o’ and ’x’ of lengt ...

  5. laravel 踩坑 env,config

    正常情况: env 方法 可以获取 .env 文件的值 config 可以获取 config 文件夹下 指定配置的值 非正常情况: 当我们执行了 php artisan config:cache 之后 ...

  6. 12-2 js基础

    一 数据类型 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  7. Laravel如何引用第三方(自定义)库

    想做一个网页抓取的功能,底层使用php的laravel框架. 这里使用phpQuery库来实现网页抓取,这里不做介绍. 需要了解的可以百度,或者等我填坑. 下载最新版本可以前往https://code ...

  8. 2019-2-11-WPF-获取应用的所有窗口

    title author date CreateTime categories WPF 获取应用的所有窗口 lindexi 2019-02-11 08:55:31 +0800 2019-02-11 0 ...

  9. Win7如何显示文件后缀

    有些时候,我们需要修改文件的后缀名,但是Windows7系统默认不显示文件后缀.我们怎样显示和修改文件后缀呢?请接着往下看. 工具/原料   一个win7系统 方法/步骤   1 如图所示,此时是无法 ...

  10. ipykernel_launcher.py: error: unrecognized arguments: -f /Users/apple/Library/Jupyter/runtime/kernel

    当在jupyter下使用parser.parse_args()出错则改换为parser.parse_known_args()[0]其效用是差不多的,至于为什么出现错误,我也不知道…