SDUT2013级測试赛_D
题目描写叙述
输入
n(1<= n && n <= 10000)。
接下来n+1行,每行两个整数w(w
<= 1000)。
第i个节点的父节点为w,若 i为根节点。600组数据。
输出
演示样例输入
3
0 5
1 5
1 6
演示样例输出
11
提示
来源
。
。非常像数塔。。
。
。。
#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的更多相关文章
- 測试赛C - Eqs(哈希)
C - Eqs Time Limit:5000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Submit Stat ...
- 測试赛D - The War(有控制范围的贪心)
D - The War Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%lld & %llu Submit St ...
- atitit.jndi的架构与原理以及资源配置and单元測试实践
atitit.jndi的架构与原理以及资源配置and单元測试实践 1. jndi架构 1 2. jndi实现原理 3 3. jndi资源配置 3 3.1. resin <database> ...
- Linux下多核环境Erlang的SMP測试
目标 (1) 了解在多核cpu环境下,erlang并发进程调度对各个cpu核负载的影响: (2) Erlang虚拟机的内存添加机理: (3) Erlang进程的调度 ...
- mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry 'xxx' for key 'PRIMARY'
mysql主键设置成auto_increment时,进行并发性能測试出现主键反复Duplicate entry 'xxx' for key 'PRIMARY' 解决方法: 在my.cnf的[mysql ...
- 星云測试- Android应用深度体检专业平台
星云測试-给你的Android应用做个深度体检 星云測试- Android应用深度体检专业平台 星云在线云測试(简称星云測试www.teststars.cc)是全球第一个公布并商用的数字化精准软件 ...
- Angular 2的12个经典面试问题汇总(文末附带Angular測试)
Angular作为眼下最为流行的前端框架,受到了前端开发者的普遍欢迎.不论是初学Angular的新手.还是有一定Angular开发经验的开发者,了解本文中的12个经典面试问题,都将会是一个深入了解和学 ...
- maven多module项目中千万不要引入其它模块的单元測试代码
本文出处:http://blog.csdn.net/chaijunkun/article/details/35796335,转载请注明. 因为本人不定期会整理相关博文,会对对应内容作出完好. 因此强烈 ...
- ios的单元測试OCUnit以及更新了之后的XCTestCase
1.像一般创建项目的步骤一样.创建一个用于測试的项目或者打开一个待測试的项目. (oc是5.0之前所使用的測试,如今用的是XCtestCase,默认会创建一个主的測试类.曾经版本号可能非常多步骤省去) ...
随机推荐
- umask相关内容
umask权限过滤符新创建的文件的权限为666,即- rw- rw- rw-新创建的目录的权限为777,即d rwxrwxrwx如umask值为0022,后三位022,即 --- -w- -w-上述默 ...
- Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) E - Goods transportation 最大流转最小割转dp
E - Goods transportation 思路:这个最大流-> 最小割->dp好巧妙哦. #include<bits/stdc++.h> #define LL long ...
- c# 递归异步获取本地驱动器下所有文件
//获取所有驱动器 string[] drives = Environment.GetLogicalDrives(); foreach (string driver in drives) { Cons ...
- C++运算符重载规则
运算符重载时要遵循以下规则: ( 1 ) 除了类属关系运算符 " . " .成员指针运算符 " .* " .作用域运算符 " :: " . ...
- C#封装StackExchange.Redis操作
using System; using StackExchange.Redis; using System.Collections.Generic; using System.Linq; using ...
- 【UOJ #206】【APIO 2016】Gap
http://uoj.ac/problem/206 对于T=1,直接从两端往中间跳可以遍历所有的点. 对于T=2,先求出最小值a和最大值b,由鸽巢原理,答案一定不小于\(\frac{b-a}{N-1} ...
- POJ3687 Katu Puzzle
好好写2-sat 如果a1-->b1矛盾则连边a1-->b2和b1-->a2 我定了一个ccnt和cnt变量,结果少打一个c,wa了好多次(lll¬ω¬) By:大奕哥 #inclu ...
- [HNOI2018]道路 --- 树形DP
[HNOI2018]道路 题目描述: W 国的交通呈一棵树的形状.W 国一共有 \(n-1\) 个城市和 \(n\) 个乡村, 其中城市从 \(1\) 到 \(n-1\) 编号,乡村从 \(1\) 到 ...
- 【推导】【线段树】hdu5929 Basic Data Structure
题意: 维护一个栈,支持以下操作: 从当前栈顶加入一个0或者1: 从当前栈顶弹掉一个数: 将栈顶指针和栈底指针交换: 询问a[top] nand a[top-1] nand ... nand a[bo ...
- session_write_close() 用法
1.需要session控制的大文件下载,防止因为占用session文件时间太久,导致其他页面的session无法执行 session_write_close() worked as a lifesav ...