博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
1362. Classmates 2
阅读量:5289 次
发布时间:2019-06-14

本文共 1029 字,大约阅读时间需要 3 分钟。

水题,树形DP

代码:

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;typedef long long ll;typedef pair
pp;const int INF=0x3f3f3f3f;const int N=100002;int head[N],I;int d[N];priority_queue
qt[N];struct node{ int j,next;}edge[N*2];void add(int i,int j){ edge[I].j=j; edge[I].next=head[i]; head[i]=I++;}int dp(int pre,int x){ if(d[x]!=-1) return d[x]; for(int t=head[x];t!=-1;t=edge[t].next) { int j=edge[t].j; if(j==pre)continue; qt[x].push(dp(x,j)); } d[x]=0; int t=0; while(!qt[x].empty()) { ++t; d[x]=max(d[x],t+qt[x].top()); qt[x].pop(); } return d[x];}int main(){ //freopen("data.in","r",stdin); int n; cin>>n; memset(head,-1,sizeof(head));I=0; memset(d,-1,sizeof(d)); for(int i=1;i<=n;++i) { int k; while(scanf("%d",&k)) { if(k==0) break; add(i,k);add(k,i); } } int root; cin>>root; cout<
<

 

转载于:https://www.cnblogs.com/liulangye/p/3347524.html

你可能感兴趣的文章
导出文件名乱码解决方案
查看>>
Leetcode Convert Sorted Array to Binary Search Tree
查看>>
CentOS6和CentOS7安装jumpserver
查看>>
hdu 1276士兵队列问题【queue】
查看>>
nandflash裸机程序分析
查看>>
Bzoj 2038: [2009国家集训队]小Z的袜子(hose)
查看>>
图片字节流生成bmp文件
查看>>
常用函数、文本处理函数、日期函数
查看>>
.net core下获取自身服务器地址
查看>>
Solr 07 - Solr从MySQL数据库中导入数据 (Solr DIH的使用示例)
查看>>
netty常用代码
查看>>
201671010140. 2016-2017-2 《Java程序设计》java学习第十六周
查看>>
字符编码
查看>>
[转]zookeeper常见面试题
查看>>
POJ 2590:Steps
查看>>
考研编程练习----m叉树先序和后序所包含的情况
查看>>
录屏软件
查看>>
C# 常用正则表达式
查看>>
SpringBoot学习笔记(1):配置Mybatis
查看>>
DownloadUtil
查看>>