2014.10.31我出的模拟赛【藏宝图】

藏宝图(treas.*)

背景

Czy爬上黑红树,到达了一个奇怪的地方……

题目描述

Czy发现了一张奇怪的藏宝图。图上有n个点,m条无向边。已经标出了图中两两之间距离dist。但是czy知道,只有当图刚好又是一颗树的时候,这张藏宝图才是真的。如果藏宝图是真的,那么经过点x的边的边权平均数最大的那个x是藏着宝物的地方。请计算这是不是真的藏宝图,如果是真的藏宝之处在哪里。

格式

输入数据第一行一个数T,表示T组数据。

对于每组数据,第一行一个n,表示藏宝图上的点的个数。

接下来n行,每行n个数,表示两两节点之间的距离。

输出一行或两行。第一行”Yes”或”No”,表示这是不是真的藏宝图。

若是真的藏宝图,第二行再输出一个数,表示哪个点是藏宝之处。

样例输入

2

3

0 7 9

7 0 2

9 2 0

3

0 2 7

2 0 9

7 9 0

样例输出

Yes

1

Yes

3

样例解释:第一棵树的形状是1--2--3。1、2之间的边权是7,2、3之间是2。

第二棵树的形状是2--1--3。2、1之间的边权是2,1、3之间是7。

数据范围

对于30%数据,n<=50,1<=树上的边的长度<=10^9。

对于50%数据,n<=600.

对于100%数据,1<=n<=2500,除30%小数据外任意0<=dist[i][j]<=10^9,T<=5

先不管它是不是树,跑最小生成树,算出在MST条件下的dist2数组。如果它是树,显然dist和dist2完全一样。如果不一样,这个图一定不是树。另外Kruskal会被卡。第二问在第一问的条件下怎么搞都行了

http://www.cnblogs.com/zhber/p/4035894.html

时间: 2024-10-04 08:43:07

2014.10.31我出的模拟赛【藏宝图】的相关文章

2014.10.31我出的模拟赛【天神下凡】

天神下凡(god.*) 背景 Czy找到宝藏获得屠龙宝刀和神秘秘籍!现在他要去找经常ntr他的Jmars报仇…… 题目描述 Czy学会了一招“堕天一击”,他对一个地点发动堕天一击,地面上就会留下一个很大的圆坑.圆坑的周围一圈能量太过庞大,因此无法通过.所以每次czy发动技能都会把地面分割.Jmars拥有好大好大的土地,几十眼都望不到头,所以可以假设土地的大小是无限大.现在czy对他发动了猛烈的攻击,他想知道在泽宇攻击之后他的土地被切成几份了? Czy毕竟很虚,因此圆心都在x坐标轴上.另外,保证所

2014.10.31我出的模拟赛【挖掘机】

挖掘机(dig.*) 背景 附中机房谁最虚?高二一班***!感觉很顺,是吧? 题目描述 今天,丧尸czy开着挖掘机去上学(……).但是他发现他的mz满天下,所以一路上他碰到了好多他的mz.一开始他以1km/min的速度(=60km/h……)开着挖掘机前进.他发现他只会在恰好到达某一时刻或者到达某个距离遇到mz.每次遇到mz,czy都会毫不犹豫的把她们顺路捎走(^_^).但是他实在是太虚了,以至于当有i个mz时他的速度下降到1/(i+1).具体说,一开始czy以1km/min速度前进,有1个mz的

2014.10.31我出的模拟赛【黑红树】

黑红树(brtree.*) 背景 Mz们在czy的生日送他一个黑红树种子……czy种下种子,结果种子很快就长得飞快,它的枝干伸入空中看不见了…… 题目描述 Czy发现黑红树具有一些独特的性质. 1. 这是二叉树,除根节点外每个节点都有红与黑之间的一种颜色. 2. 每个节点的两个儿子节点都被染成恰好一个红色一个黑色. 3. 这棵树你是望不到头的(树的深度可以到无限大) 4. 黑红树上的高度这样定义:h(根节点)=0,h[son]=h[father]+1. Czy想从树根顺着树往上爬.他有p/q的概

10.06 国庆节第九场模拟赛

密钥(key) Description 在这个问题中,一个密钥是指一个长度为\(3n\)的二进制序列,其中\(n\)是正整数. 序列的每一位从左往右依次被编号为\(1\)到\(3n\) ,一个密钥的权值是指数字不同的相邻位的个数再加上\(1\) .比如: \(000\) 的权值是 \(1\), \(011010100\) 的权值是 \(7\). 密钥可以被修改.确切地说,你可以不断地进行下面的操作:任选两个相邻的位,然后同时将它们取反.例如,可以通过一次操作把 \(000\) 修改为 110 .

【2014.10.31】难得的休息

从10月16号到今天中午连续上了半个月的班,因为今天车间做消防检查停产,下午难得地回家睡了一觉,五点多醒来后问同事,说今天夜班也不用去了,兴奋了好一阵子. 白班是早八点半到下午四点半,夜班十点半到第二天早八点. 这个月17号晚上把被子直接抱到了焊装中控室,晚上如果不需要通宵改代码的话就睡一会,不过随时被工段长叫醒改计划. 话说回来从9月16号到了现场至今,也就十一休息了一天吧,在家补了一整天中国大学MOOC上的计算机思维课程.其余时间就是四个车间来回跑. 当然有过抱怨和辞职的念头,还是抑制住了.

【Nescaf&#233; 31】杯NOIP模拟赛

t1 题意:n*m的棋盘上从(1,1)走到(n,m),只能向下或向右,一些格子有老鼠,每个老鼠互不相同,当处于与老鼠有重边的格子时,视为看见了这只老鼠,求到终点看到最少的不同老鼠数. 分析:DP 由于求得是看到的不同的老鼠数目,不能直接用过河卒做,因为同一个位置的老鼠可能会统计多次,我们还需要增加一维即方向. f[i,j,0]表示到从上面一个格子走到(i,j)时最少老鼠数,f[i,j,1]表示左边. f[i,j,0]:=min(f[i-1,j,0]+a[i,j-1],f[i-1,j,1])+a[

NOIP模拟赛

#1[Nescafé 31]杯NOIP模拟赛 t1 题意:n*m的棋盘上从(1,1)走到(n,m),只能向下或向右,一些格子有老鼠,每个老鼠互不相同,当处于与老鼠有重边的格子时,视为看见了这只老鼠,求到终点看到最少的不同老鼠数. 分析:DP 由于求得是看到的不同的老鼠数目,不能直接用过河卒做,因为同一个位置的老鼠可能会统计多次,我们还需要增加一维即方向. f[i,j,0]表示到从上面一个格子走到(i,j)时最少老鼠数,f[i,j,1]表示左边. f[i,j,0]:=min(f[i-1,j,0]+

10.31 模拟赛

10.31 模拟赛 A LIS 考虑每个数字前从 $ m $ 降序构造到 $ a_i $ 即可. #include <iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<vector> using namespace std; #define MAXN 300006 int n , m , k; int A[MAXN]; vector<int&g

10.30 NFLS-NOIP模拟赛 解题报告

总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没码QAQ 现在我来写解题报告了,有点饿了QAQ.. 第一题 题目 1: 架设电话线 [Jeffrey Wang, 2007] 最近,Farmer John的奶牛们越来越不满于牛棚里一塌糊涂的电话服务,于 是,她们要求FJ把那些老旧的电话线换成性能更好的新电话线.新的电话线架设 在已有的N(2 <=