首页 > 其他分享 >神秘基环树

神秘基环树

时间:2023-06-15 19:22:25浏览次数:28  
标签:神秘 背包 重量 textbf 获得 基环树 条边

给一棵带边权的基环树,每次选一条有 \(\textbf{3}\) 条边的链,获得这 \(\textbf{3}\) 条边的权值并删去它们(只删边,点保留),求能获得的最大价值。\(n\le 10^5\)

Sol

先考虑树怎么做,容易发设 \(f_{i,0/1/2}\) 表示节点 \(i\) 往下挂了长为 \(0/1/2\) 的链时获得的最大价值,\(1\) 和 \(2\) 会互相配对。我们将 \(1\) 的重量设为 \(1\),\(2\) 的重量设为 \(-1\),实际上就是一个背包。

但是直接跑背包会被卡到 \(\Theta(n^2)\),不妨考虑随机打乱顺序,背包的最大容量只需要到 \(O(\sqrt{n})\) 级别。

基环树的话随便断环上的一条边即可处理。

标签:神秘,背包,重量,textbf,获得,基环树,条边
From: https://www.cnblogs.com/wwlwakioi/p/17483878.html

相关文章

  • 田渊栋新作:打开1层Transformer黑盒,注意力机制没那么神秘
    前言 从四篇论文入手,Sebastian再谈Transformer架构图。本文转载自机器之心仅用于学术分享,若侵权请联系删除欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。CV各大方向专栏与各个部署框架最全教程整理【CV技术指南】CV全......
  • 田渊栋新作:打开1层Transformer黑盒,注意力机制没那么神秘
    前言 AI理论再进一步,破解ChatGPT指日可待?本文转载自新智元仅用于学术分享,若侵权请联系删除欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。CV各大方向专栏与各个部署框架最全教程整理【CV技术指南】CV全栈指导班、基础入门......
  • 神秘脚本
    1#!/bin/bash2ip=$(ipasens33grep-Eo([0-9](1,3)\.)(3)[0-9](1,3)head-1)3echo$ip45groupaddapp6if[`echo$ip|grep3`];then7foriin`seq100`8do9if(($i<10));then10useradd-gappapp......
  • 揭开正则表达式的神秘面纱
    揭开正则表达式的神秘面纱1.正则表达式规则1.1普通字符   字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。   举例1:表达式"c",在匹配字符串"abcde"时,匹配结果是:成......
  • 揭开 JavaScript 事件循环的神秘面纱
    Javascript是一种单线程语言,这意味着它一次只能执行一个任务。但是,它仍然设法同时执行多项任务。它通过使用一些复杂的数据结构给人一种多线程的错觉。为实现这一点,Javascript引擎有一个称为事件循环的重要组件。我们将了解什么是事件循环以及它如何在不阻塞主线程的情况下处理异......
  • 逍遥自在学C语言 | 揭开while循环的神秘面纱
    前言循环是一种重要的控制结构,可以使程序重复执行一段代码,直到满足特定条件为止。在C语言中,while和do-while是两种常用的循环结构,本文将详细介绍这两种循环的用法。一、人物简介第一位闪亮登场,有请今后会一直教我们C语言的老师——自在。第二位上场的是和我们一起学习......
  • 一种神秘的均摊方法
    UOJ191Unknown你需要维护一个向量序列,支持如下操作:在末尾加入一个向量\((u,v)\)。删除末尾的向量。询问\([l,r]\)内的向量与\((x,y)\)叉积的最大值。\(n,m\le5e5\)。这个东西我们首先一眼用李超树或者维护凸包来做全局询问最大值的子问题。考虑怎么把\([l,r]\)......
  • 基环树
    一、基环树的概念:基环树,就是一个n个点n条边的连通图。简单来说,就是一个树加上了一条边形成了一个环。如果不联通,那么它就变成基环树森林。如图如果断开环上任意一条边,那么它就变为一个树,如果断掉整个环,那么就变成了一个基环树森林。二、内向树和外向树内向树:每个点有且......
  • < Python全景系列-3 > Python控制流程盘点及高级用法、神秘技巧大揭秘!
    欢迎来到我们的系列博客《Python全景系列》!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法。无论你是编程新手,还是有一定基础的开发者,这个系列都将提供你需要的知识和技能。这是系列第三篇,在这篇文章中我们将全面深入地......
  • < Python全景系列-5 > 解锁Python并发编程:多线程和多进程的神秘面纱揭晓
    欢迎来到我们的系列博客《Python全景系列》!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法。无论你是编程新手,还是有一定基础的开发者,这个系列都将提供你需要的知识和技能。这是本系列的第五篇,我们将深入探讨Python中的......