
树
文章平均质量分 54
SSLGZ_yyc
这个作者很懒,什么都没留下…
展开
-
这是一棵树吗?
分析树中的每条边都会被作为入度和出度,也就是说 度数和 / 2 = 树的边数作为一棵合理树,树的边数 = 树的节点数 - 1注意特判0的情况比如 3 3 1 0虽然 (3 + 1 + 0) / 2 = 3 - 1,但是这不是一颗树......程序:#include<iostream> #include<cstdio>#include<cstring>using namespace std;int main(){ int n,su.原创 2020-08-31 21:31:47 · 226 阅读 · 0 评论 -
迷宫花坛(garden)
题目描述圣玛格丽特学园的一角有一个巨大、如迷宫般的花坛。大约有一个人这么高的大型花坛,做成迷宫的形状,深受中世纪贵族的喜爱。维多利加的小屋就坐落在这迷宫花坛的深处。某一天早晨,久城同学要穿过这巨大的迷宫花坛,去探望感冒的维多利加。整个迷宫可以用N个路口与M条连接两个不同路口的无向通道来描述。路口被标号为1到N,每条通道有各自的长度。整个迷宫一定是连通的,迷宫中可能存在若干个环路,但是,出于美观考虑,每个路口最多只会属于一个简单环路。例如,图1所示的迷宫是非常美观的,但图2则不符合我们的描述,因为3号路口原创 2020-08-19 07:56:02 · 345 阅读 · 0 评论 -
简单计算题
题目描述输入输出Data Constraint输入输出输入样例41 4 3 2输出样例复制3.....分析题目中描述(a,b),(c,d)两种二元组的个数很容易用树状数组求出(先离散一下)。用t1代表(a,b)的个数,t2代表(c,d)的个数,那么t1t2就是(a,b,c,d)的个数,但有点差别,这里的(a,b,c,d)可能会有位置相同的情况。所以t1t2还要减去一些重复的情况。有哪些重复情况呢:很简单:a=c,a=d,b=c,b=d。分别用树状数组求出原创 2020-08-13 19:54:47 · 167 阅读 · 0 评论 -
仓鼠找sugar
题目描述小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n。地下洞穴是一个树形结构。这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而他的基友同时要从他的卧室(c)到图书馆(d)。他们都会走最短路径。现在小仓鼠希望知道,有没有可能在某个地方,可以碰到他的基友?小仓鼠那么弱,还要天天被zzq大爷虐,请你快来救救他吧!输入格式第一行两个正整数n和q,表示这棵树节点的个数和询问的个数。接下来n-1行,每行两个正整数u和v,表示节点u到节点v之间有一条边。接下来q行,每原创 2020-08-11 20:39:55 · 142 阅读 · 0 评论 -
灌水
题目描述Farmer John已经决定把水灌到他的n块农田,农田被数字1到n标记。把一块土地进行灌水有两种方法,从其他农田饮水,或者这块土地建造水库。建造一个水库需要花费wi,连接两块土地需要花费Pij.计算Farmer John所需的最少代价。输入*第一行:一个数n*第二行到第n+1行:第i+1行含有一个数wi*第n+2行到第2n+1行:第n+1+i行有n个被空格分开的数,第j个数代表pij。输出*第一行:一个单独的数代表最小代价.输入样例454430 2 2 22 0原创 2020-08-11 16:12:46 · 925 阅读 · 0 评论 -
【SHTSC2013】发牌
Description在一些扑克游戏里,如德州扑克,发牌是有讲究的。一般称呼专业的发牌手为荷官。荷官在发牌前,先要销牌(burn card)。所谓销牌,就是把当前在牌库顶的那一张牌移动到牌库底,它用来防止玩家猜牌而影响游戏。假设一开始,荷官拿出了一副新牌,这副牌有N张不同的牌,编号依次为1到N。由于是新牌,所以牌是按照顺序排好的,从牌库顶开始,依次为1, 2,……直到N,N号牌在牌库底。为了发...原创 2019-07-02 15:20:57 · 2364 阅读 · 0 评论 -
【NOIP2016提高A组五校联考2】tree
Description给一棵n 个结点的有根树,结点由1 到n 标号,根结点的标号为1。每个结点上有一个物品,第i 个结点上的物品价值为vi。你需要从所有结点中选出若干个结点,使得对于任意一个被选中的结点,其到根的路径上所有的点都被选中,并且选中结点的个数不能超过给定的上限lim。在此前提下,你需要最大化选中结点上物品的价值之和。求这个最大的价值之和。Input第一行为两个整数n; li...原创 2019-07-08 20:12:44 · 231 阅读 · 0 评论 -
【模板】树链剖分
.....分析树剖+线段树(我的代码太丑了,打了170+行).....程序:#include<iostream>#include<cstdio>#include<cstring>#include<cmath>using namespace std;struct edge{ int to,from;}e[...原创 2019-07-08 21:18:07 · 162 阅读 · 0 评论 -
【NOIP2016提高A组五校联考1】排队
DescriptionInputOutputSample Input5 41 21 33 43 51 42 41 22 5Sample Output3112Data ConstraintHint......分析首先每个点的优先级是固定的。即,每次新来一个人必定去优先级最高的没人的点所以我们预处理出每一个点的优先级,就是下一个走进来的...原创 2019-07-03 19:11:31 · 130 阅读 · 0 评论 -
【NOIP2012模拟10.17】独立集
Description对于一棵树,独立集是指两两互不相邻的节点构成的集合。例如,图1有5个不同的独立集(1个双点集合、3个单点集合、1个空集),图2有14个不同的独立集,图3有5536个不同的独立集。Input输入文件名为 duliji. in。第一行一个正整数n,表示点的数量。n最大为100000。接下来n-1行,有两个整数a、b,表示编号为a、b的两个点之间有一条边,其中a、b大于...原创 2019-07-05 15:03:58 · 3656 阅读 · 0 评论 -
树B
Description已知无向连通图G由N个点,N-1条边组成。每条边的边权给定。现要求通过删除一些边,将节点1与另M个指定节点分开,希望删除的边的权值和尽量小,求此最小代价。Input每个输入文件中仅包含一个测试数据。第一行包含两个整数N,M。第二行至第N行每行包含3个整数,A、B、C,表示节点A与节点B有一条边相连,边权为C。第N+1行至第N+M行每行包含一个整数X,表示要求与节点...原创 2019-07-06 19:41:56 · 157 阅读 · 0 评论 -
树A
Description已知无向连通图G由N个点,N-1条边组成。每个点有给定权值。现有M个操作,操作分为2种:操作1,将某点权值更改;操作2,询问从点A至点B路径上所有点的权值和。Input每个输入文件中仅包含一个测试数据。第一行包含两个整数N,M。第二行至第N行每行包含2个整数,A、B,表示节点A与节点B有一条边相连。第N+1行包含N个整数,表示第N个点的初始权值。第N+2行至第N...原创 2019-07-07 15:26:41 · 241 阅读 · 1 评论 -
排序
Description你收到一项对数组进行排序的任务,数组中是1到N个一个排列。你突然想出以下一种特别的排序方法,分为以下N个阶段: •阶段1,把数字1通过每次交换相邻两个数移到位置1; •阶段2,用同样的方法把N移到位置N; •阶段3,把数字2移到位置2处; •阶段4,把数字N-1移到位置N-1处; •依此类推。 换句话说,如果当前阶段为奇数,则把最小的未操作的数移到正...原创 2019-08-07 16:10:34 · 177 阅读 · 0 评论 -
无聊的草稿
Description 图中有N个点,每两点间只有唯一的路径,对于这样一个给定的图,最大的“毛毛虫”会有多大。毛毛虫包含一条主链,毛毛虫中的节点,要不在主链上,要么和主链上某节点相邻,如下图所示有两只合法的毛毛虫,点数越多,毛毛虫越大。 Input 输入文件第一行两个整数N,M(N≤1000000) 接下来M行,每行两个整数a, b(a, b≤N) 你可以假定没有一对相...原创 2019-09-07 14:32:21 · 183 阅读 · 0 评论 -
[ZJOI2008]树的统计
题目描述一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作:I. CHANGE u t : 把结点u的权值改为tII. QMAX u v: 询问从点u到点v的路径上的节点的最大权值III. QSUM u v: 询问从点u到点v的路径上的节点的权值和注意:从点u到点v的路径上的节点包括u和v本身输入输出格式输入格式:输入文件...原创 2019-07-07 16:23:44 · 189 阅读 · 0 评论 -
我才不是萝莉控呢
Description小Y:“小R 你是萝莉控吗。”小R:“…”为了避免这个尴尬的话题,小R 决定给小Y 做一道题。有一个长度为n 的正整数数组A,满足Ai >= Ai+1,现在构造一个数组B,令Bi =。现在,有一个n * n 的网格图,左下角坐标是(1, 1),右上角坐标是(n, n)。有一个小SB正在坐标为(n, 1) 的位置,每一时刻,如果他现在在(x, y),他可以选择走到...原创 2019-01-21 21:55:32 · 958 阅读 · 0 评论 -
改造二叉树
Description小Y在学树论时看到了有关二叉树的介绍:在计算机科学中,二叉树是每个结点最多有两个子结点的有序树。通常子结点被称作“左孩子”和“右孩子”。二叉树被用作二叉搜索树和二叉堆。随后他又和他人讨论起了二叉搜索树。什么是二叉搜索树呢?二叉搜索树首先是一棵二叉树。设key[p]表示结点p上的数值。对于其中的每个结点p,若其存在左孩子lch,则key[p]>key[lch];若其存...原创 2019-01-25 19:14:50 · 209 阅读 · 0 评论 -
排队
Description 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序列排队. 有一天, John决定让一些牛们玩一场飞盘比赛. 他准备找一群在对列中为置连续的牛来进行比赛.但是为了避免水平悬殊,牛的身高不应该相差太大. John 准备了Q (1 <= Q <= 180,000) 个可能的牛的选择和所有牛的身高 (1 <=身...原创 2018-03-23 19:29:25 · 341 阅读 · 0 评论 -
删边
Description 给出N个点,N-1条边的连通图. 现要求删除一条边,使得连通块的直径总和最大.所谓连通块的直径是指连通块中最远两点之间的距离。 问:直径总和最大是多少?Input 文件名为 delete.in 第一行正整数N. 接下来N-1行.每行两个数,A,B,LEN表示A,B(1<=A,B<=N)有一条长度为Len(1<=...原创 2018-07-08 21:24:30 · 359 阅读 · 0 评论 -
【NOIP2013模拟9.29】Mixing Chemicals
Description 实验室有n瓶化学药品,编号为0到n-1,你知道第i瓶只有和第c[i]瓶放在一起才会发生爆炸。为了整理实验室,你需要将他们装进k个丌同的盒子里。显然,为了你的生命安全,你丌能把两瓶会造成爆炸的药品放进同一个箱子。你希望计算出有多少中丌同的方案。为了降低难度,你只需要将答案mod 1000000007。Input 第一行一个整数T,表示有T组测试数据。对于每组数据...原创 2018-07-18 21:25:31 · 302 阅读 · 0 评论 -
【NOIP2015模拟10.27】魔道研究
Description “我希望能使用更多的魔法。不对,是预定能使用啦。最终我要被大家称呼为大魔法使。为此我决定不惜一切努力。” ——《The Grimoire of Marisa》雾雨魔理沙 魔理沙一如既往地去帕秋莉的大图书馆去借魔导书(Grimoire) 来学习魔道。 最开始的时候,魔理沙只是一本一本地进行研究。然而在符卡战中,魔理沙还是战不过帕秋莉。 好在魔理沙对自己的借还和研究结...原创 2018-07-12 21:19:20 · 229 阅读 · 0 评论 -
【CQOI2009】叶子的颜色
Description 给一棵m个结点的无根树,你可以选择一个度数大于1的结点作为根,然后给一些结点(根、内部结点和叶子均可)着以黑色或白色。你的着色方案应该保证根结点到每个叶子的简单路径上都至少包含一个有色结点(哪怕是这个叶子本身)。 对于每个叶结点u,定义c[u]为从u到根结点的简单路径上第一个有色结点的颜色。给出每个c[u]的值,设计着色方案,使得着色结点的个数尽量少。Inp...原创 2018-07-07 14:41:50 · 409 阅读 · 0 评论 -
【NOI2002】贪吃的九头龙
Description 传说中的九头龙是一种特别贪吃的动物。虽然名字叫“九头龙”,但这只是说它出生的时候有九个头,而在成长的过程中,它有时会长出很多的新头,头的总数会远大于九,当然也会有旧头因衰老而自己脱落。 有一天,有M个脑袋的九头龙看到一棵长有N个果子的果树,喜出望外,恨不得一口把它全部吃掉。可是必须照顾到每个头,因此它需要把N个果子分成M组,每组至少有一个果子,让每个头吃一组。 这M个...原创 2018-07-07 20:55:19 · 611 阅读 · 2 评论 -
【NOIP2013模拟】小喵喵的新家
Description 小喵喵和小聪聪从小就是好朋友 ,他们经常在一起玩耍 。如今小喵已经厌倦了自己居住的环境,想请小聪聪为她建一个新家。小喵喵天生多才多艺,对多种乐器颇有研究。对于生活中常见的图形,她对圆形很感兴趣,因此小聪聪决定为她建一个圆形的新家。我们设新家在一个平面直角坐标系上,其中新家的圆心为平面直角坐标系的原点。小聪聪有一把神奇的剪刀,他定义了一个值m,以等分 [−pi,...原创 2018-07-19 20:55:24 · 249 阅读 · 0 评论 -
POJ 2182 Lost Cows [树状数组+二分]
DescriptionN (2 <= N <= 8,000) cows have unique brands in the range 1..N. In a spectacular display of poor judgment, they visited the neighborhood ‘watering hole’ and drank a few too many beer...原创 2018-08-22 14:43:18 · 271 阅读 · 0 评论 -
洛谷 P3374 【模板】树状数组 1
题目描述 如题,已知一个数列,你需要进行下面两种操作:1.将某一个数加上x2.求出某区间每一个数的和输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含3个整数,表示一个操作,具体如下:操作1: 格式:1 x k 含义:将第x个数加上k操...原创 2018-08-21 21:08:50 · 162 阅读 · 0 评论 -
洛谷 P3368 【模板】树状数组 2
题目描述 如题,已知一个数列,你需要进行下面两种操作:1.将某区间每一个数数加上x2.求出某一个数的和输入输出格式 输入格式: 第一行包含两个整数N、M,分别表示该数列数字的个数和操作的总个数。第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。接下来M行每行包含2或4个整数,表示一个操作,具体如下:操作1: 格式:1 x y k 含义:将区间[x,...原创 2018-08-21 21:28:46 · 146 阅读 · 0 评论 -
树(未完成)
题目描述 小L非常喜欢树。最近,他发现了一棵有趣的树。这棵树有n个节点(1到n编号),节点i有一个初始的权值ai。这棵树的根是节点1。 这棵树有一个特殊的性质:当你给节点i的权值加 val 的时候,节点i的所有儿子的权值都会加 -val。注意当你给节点i的儿子的权值加 -val 时,节点i的这个儿子的所有儿子的权值都会加 -(-val),以此类推。样例说明可以很好地帮助你理解这个性质。...原创 2020-09-12 16:10:34 · 495 阅读 · 0 评论 -
聚会
......分析这个题要求的其实是由上司下属所构成的树的最小层数.....程序:#include<iostream>#include<cstdio>using namespace std;int n,f[2001],ans=0;int main(){ scanf("%d",&n); for (int i=1;...原创 2018-10-06 16:23:40 · 468 阅读 · 0 评论 -
人品问题
Description网上出现了一种高科技产品——人品测试器。只要你把你的真实姓名输入进去,系统将自动输出你的人品指数。yzx不相信自己的人品为0。经过了许多研究后,yzx得出了一个更为科学的人品计算方法。这种方法的理论依据是一个非常重要的结论:人品具有遗传性。因此,一个人的人品完全由他的祖先决定。yzx提出的人品计算方法相当简单,只需要将测试对象的k个祖先的人品指数(可能为负数)加起来即可。选...原创 2019-01-24 20:38:49 · 376 阅读 · 0 评论 -
【线段树】最大值
题目描述 在N(1(1)1 x y:表示修改A[x]为y; (1)2 x y:询问x到y之间的最大值。输入 第一行输入N(1输出 对于每个操作(2)输出对应的答案。样例输入 5 1 2 3 4 5 3 2 1 4 1 3 5 2 2 4样例输出 4 5数据范围限制提示【限制】保证序列中的所有的数都在longint范围内 . .原创 2018-02-06 11:09:45 · 549 阅读 · 0 评论