首页 > 其他分享 >E64 树形DP P3174 [HAOI2009] 毛毛虫

E64 树形DP P3174 [HAOI2009] 毛毛虫

时间:2024-10-12 10:00:16浏览次数:9  
标签:int P3174 树形 DP 毛毛虫 E64 HAOI2009

视频链接:E64 树形DP P3174 [HAOI2009] 毛毛虫_哔哩哔哩_bilibili

 

 

P3174 [HAOI2009] 毛毛虫 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

// 树形DP O(n)
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;

const int N=300005;
int n,m,ans,du[N],f[N];
int head[N],idx;
struct E{int v,ne;}e[N<<1];

void add(int x,int y){
  e[++idx]={y,head[x]};
  head[x]=idx;
  du[x]++; //度
} 
void dfs(int u,int fa){
  f[u]=du[u];
  for(int i=head[u];i;i=e[i].ne){
    int v=e[i].v;
    if(v==fa)continue;
    dfs(v,u);
    ans=max(ans,f[u]+f[v]-1);
    f[u]=max(f[u],du[u]+f[v]-1);
  }
}
int main(){
  scanf("%d%d",&n,&m);
  for(int i=1,x,y;i<=m;i++){
    scanf("%d%d",&x,&y);
    add(x,y);add(y,x);
  }
  dfs(1,0);
  cout<<ans+1<<endl;
}

 

标签:int,P3174,树形,DP,毛毛虫,E64,HAOI2009
From: https://www.cnblogs.com/dx123/p/18444936

相关文章

  • dp内启用第三方软件方法
    dp内启用第三方软件方法使用代码方法,需要SSH到终端进行:1.下载需要的app,以com.autonavi.amapauto.apk为例cd/data/&&gitclonehttps://github.com/dragonpilot-community/apps.gitapps-bcom.autonavi.amapauto.apk 在sdard内新建文件夹apks文件夹cd/sda......
  • 在Linux中搭建WordPress并实现Windows主机远程访问
      WordPreWordPress是一个基于PHP开发的开源平台,适用于在支持PHP与MySQL数据库的服务器上搭建个性化博客或网站。同时,它也能够作为功能强大的内容管理系统(CMS)被广泛应用。虚拟机:VirtualBox虚拟机安装......
  • 区间dp板子
    比较简单的dp,但是建模可能会比较困难。以P1775石子合并(弱化版)为例(https://www.luogu.com.cn/problem/P1775)思路:要求1-n的石子合并的代价,可以看成小的区间问题,化为1-k+k-n的两个区间。然后就有递推式子:dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]+w[j]-w[i-1]。编......
  • ABC292G Count Strictly Increasing Sequences [区间DP]
    Description你有\(n\)个数,每个数长度为\(m\)。不过这\(n\)个数中,可能有某些位不确定,需要你在每个?位置上\(0\)到\(9\)之间填一个数。设你填出来的序列是\(\{S_i\}\)。请你求出,在所有可能的填数方案中,有多少种满足\(S_1<S_2<\dots<S_n\)?对\(998244353\)取......
  • 【刷题笔记】DP 2021.10.11
    Candies思路朴素的算法设\(f_{i,j}\)表示给前\(i\)个小朋友分\(j\)个糖的方案数,\[f_{i,j}=\sum_{k=0}^{min(a[i],j)}f_{i-1,j-k}\]注意到此时时间复杂度为\(O(n\timesk^2)\)想到用前缀和进行优化,设\(s_{i,j}\)表示\(\sum_{j=0}^{k}f_{i,j}\)则\(DP\)转移方程\[f_{i,j}=s_......
  • LeetCode:871. 最低加油次数(DP Java)
    目录871.最低加油次数题目描述:实现代码与解析:DP原理思路:871.最低加油次数题目描述:        汽车从起点出发驶向目的地,该目的地位于出发位置东面 target 英里处。沿途有加油站,用数组 stations 表示。其中 stations[i]=[positioni,fueli] 表示第 ......
  • webservice接口调用报:由于 ContractFilter 在 EndpointDispatcher 不匹配,因此 Action
    1、问题:<s:Envelopexmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body><s:Fault><faultcodexmlns:a="http://schemas.microsoft.com/ws/2005/05/addressing/none">a:ActionNotSupported</faultcode><faul......
  • wordpress网站 建立数据库连接出错
    WordPress网站在建立数据库连接时出错通常是由以下几个原因造成的:配置文件错误:检查 wp-config.php 文件中的数据库配置信息是否正确,包括数据库主机名、用户名、密码、数据库名称等。数据库服务器未运行:确保MySQL或其他数据库服务正在运行,并且可以从Web服务器访问。数据......
  • 基于Window网络编程课程设计(刘琰著)写tcp和udp双回射服务器思想及代码实现
    再写一遍双回射,主要还是按照书上走,也方便自己回顾理解而且这个代码完美解决了tcp阻塞问题,其实看懂这个代码也理解了为什么上篇的代码网络编程——实现tcp和udp的双回射服务器(c++)-CSDN博客会被阻塞,读者可以自己思考下本书还是采用的是select的方法来实现双回射的服务器。一......
  • 洛谷P2224产品加工(DP)
    [HNOI2001]产品加工题目描述某加工厂有A、B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成。由于受到机器性能和产品特性的限制,不同的机器加工同一产品所需的时间会不同,若同时由两台机器共同进行加工,所完成任务又会不同。某一天,加工厂接到\(n\)个......