题目描写叙述

给出一棵含有n个点的树。每一个点权值为wi。求从根节点到叶子结点权值和最大的那条路经的权值和是多少。

输入

n(1<= n && n <= 10000)。

接下来n+1行,每行两个整数w(w
<= 1000)。

第i个节点的父节点为w,若 i为根节点。600组数据。

输出

 对于每组数据,输出一个数代表答案。

演示样例输入

3
0 5
1 5
1 6

演示样例输出

11

提示

 

来源

 解题报告
求从根节点出发到叶子的最长路。

。非常像数塔。。

我暴力dfs过了.怒搜全部数枝,搜完答案就有了。

。。

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
struct node
{
int v,next;
} edge[100000];
int head[10010],cnt,vv[10010],vis[10010],n,maxx;
void add(int u,int v)
{
edge[cnt].v=v;
edge[cnt].next=head[u];
head[u]=cnt++;
}
void dfs(int s,int d)
{
int i,j;
for(i=head[s]; i!=-1; i=edge[i].next)
dfs(edge[i].v,d+vv[edge[i].v]);
if(d>maxx)
maxx=d;
}
int main()
{
int i,j,v,w;
while(~scanf("%d",&n))
{
maxx=0;
cnt=0;
memset(edge,0,sizeof(edge));
memset(vv,0,sizeof(vv));
memset(head,-1,sizeof(head));
for(i=0; i<n; i++)
{
scanf("%d%d",&v,&w);
add(v-1,i);
vv[i]=w;
}
dfs(0,vv[0]);
printf("%d\n",maxx);
}
return 0;
}

学长标程好像跟数塔类似,从下至上的找最大的。。

以下是啸爷的标程。。。
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdlib>
#include <cstdio>
#include <queue>
#include <cmath>
#include <stack>
#include <map> #pragma comment(linker, "/STACK:1024000000");
#define EPS (1e-8)
#define LL long long
#define ULL unsigned long long
#define _LL __int64
#define _INF 0x3f3f3f3f
#define Mod 9999991 using namespace std; int head[10010]; struct E
{
int v,next;
}edge[10010]; int Top; int Link(int u,int v)
{
edge[Top].v = v;
edge[Top].next = head[u];
head[u] = Top++;
} int value[10010]; int dfs(int root)
{
int temp = 0; for(int p = head[root];p != -1; p = edge[p].next)
{
temp = max(temp,dfs(edge[p].v));
} value[root] += temp; return value[root];
} int main()
{
freopen("data1.in","r",stdin);
freopen("data1.out","w",stdout);
int n,i,j,v,w; while(scanf("%d",&n) != EOF)
{
memset(head,-1,sizeof(head));
Top = 0; for(i = 1;i <= n; ++i)
{
scanf("%d %d",&v,&w);
Link(v,i);
value[i] = w;
} printf("%d\n",dfs(1));
}
return 0;
}

SDUT2013级測试赛_D的更多相关文章

  1. 測试赛C - Eqs(哈希)

    C - Eqs Time Limit:5000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Stat ...

  2. 測试赛D - The War(有控制范围的贪心)

    D - The War Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Submit St ...

  3. atitit.jndi的架构与原理以及资源配置and单元測试实践

    atitit.jndi的架构与原理以及资源配置and单元測试实践 1. jndi架构 1 2. jndi实现原理 3 3. jndi资源配置 3 3.1. resin  <database> ...

  4. Linux下多核环境Erlang的SMP測试

    目标 (1)       了解在多核cpu环境下,erlang并发进程调度对各个cpu核负载的影响: (2)       Erlang虚拟机的内存添加机理: (3)       Erlang进程的调度 ...

  5. mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry &#39;xxx&#39; for key &#39;PRIMARY&#39;

    mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry 'xxx' for key 'PRIMARY' 解决方法: 在my.cnf的[mysql ...

  6. 星云測试- Android应用深度体检专业平台

    星云測试-给你的Android应用做个深度体检   星云測试- Android应用深度体检专业平台 星云在线云測试(简称星云測试www.teststars.cc)是全球第一个公布并商用的数字化精准软件 ...

  7. Angular 2的12个经典面试问题汇总(文末附带Angular測试)

    Angular作为眼下最为流行的前端框架,受到了前端开发者的普遍欢迎.不论是初学Angular的新手.还是有一定Angular开发经验的开发者,了解本文中的12个经典面试问题,都将会是一个深入了解和学 ...

  8. maven多module项目中千万不要引入其它模块的单元測试代码

    本文出处:http://blog.csdn.net/chaijunkun/article/details/35796335,转载请注明. 因为本人不定期会整理相关博文,会对对应内容作出完好. 因此强烈 ...

  9. ios的单元測试OCUnit以及更新了之后的XCTestCase

    1.像一般创建项目的步骤一样.创建一个用于測试的项目或者打开一个待測试的项目. (oc是5.0之前所使用的測试,如今用的是XCtestCase,默认会创建一个主的測试类.曾经版本号可能非常多步骤省去) ...

随机推荐

  1. GUC-2 原子性

    import java.util.concurrent.atomic.AtomicInteger; /* * 一.i++ 的原子性问题:i++ 的操作实际上分为三个步骤“读-改-写” * int i ...

  2. Redis实战(四)

    配置好了web.config程序,并且能通过C#代码来读取和管理以上配置信息. 接下来,就可以进行Redis的数据写入了.Redis中可以用Store和StoreAll分别保存单条和多条数据,C#中具 ...

  3. 使用gradle建立java application

    建立项目目录mkdir java-democd java-demo 初始化项目目录gradle init --type java-application 编译./gradlew build 运行./g ...

  4. 《java虚拟机》----虚拟机字节码执行引擎

    No1: 物理机的执行引擎是直接建立在处理器.硬件.指令集合操作系统层面上的,而虚拟机的执行引擎则是由自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格 ...

  5. (15) go 方法

  6. XINCLUDE

    前言 导入外部xml文档,类似于php的include,将外部定义的dtd引入当前文件,因为引入外部实体具有局限性,所以使用xinclude来引入 语法 导入外部文档: <xi:include ...

  7. 洛谷——P2393 yyy loves Maths II

    P2393 yyy loves Maths II 题目背景 上次蒟蒻redbag可把yyy气坏了,yyy说他只是小学生,蒟蒻redbag这次不坑他了. 题目描述 redbag给了yyy很多个数,要yy ...

  8. Jenkins多选项框使用

    多选框的使用场景还是挺多的,比如发布多个服务,或者选择哪些服务器 想要使用多选项,则需要安装插件extend choice parameter,然后在项目中配置参数化构建过程 配置完上面,我们就可以在 ...

  9. [BZOJ4826][HNOI2017]影魔(主席树)

    4826: [Hnoi2017]影魔 Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 669  Solved: 384[Submit][Status][ ...

  10. [CODECHEF]EASYEX

    题意:有一个$k$面的骰子,上面的数字为$1\cdots k$,现在要丢$n$次骰子,设$n$次中有$a_i$次扔到数字$i$,给定$l,f$,求$\prod\limits_{i=1}^la_i^f$ ...