- 博客(200)
- 收藏
- 关注
原创 2019hbcpc部分题解
Date:2022.04.28A.Battle of BallsB Icebound and SequenceC 分治E Paper Plane Fly AwayG 点我H 天神的密码J 舔狗K 河北美食L smart robotA.Battle of Balls时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 65536K,其他语言131072K64bit IO Format: %lld题目描述:Now that you have a ball of radius
2022-04-30 03:59:05
1943
原创 【2022寒假基础集训】第二场 - G.小沙的身法【树上差分+LCA】
Date:2022.04.28题目描述小沙发现他打球打不赢别人,打架也打不赢别人,所以他去了少林寺学习身法,以求打球的时候可以跑的更快,打架的时候也可以跑的更快(bushi)。少林寺的方丈告诉小沙,他这种情况可以练习跳木桩,少林寺的一共有n个木桩,为了锻炼打球时的步伐,方丈严格限制的小沙的可移动路线,他规定小沙一定要按照他制定的方案来训练,否则小沙就会被方丈制裁。小沙发现 方丈制定的路线是一个以一个点扩散开的树形结构,而小沙就需要在这一个树形结构上跳来跳去。由于两个木桩之间的间隔特别特别远,所以每次
2022-04-28 01:13:53
427
原创 【2022寒假基础集训】第一场 - B.炸鸡块君与FIFA22【倍增DP+集合分类】
Date:2022.04.27题目描述:热爱足球(仅限游戏)的炸鸡块君最近购买了FIFA22,并且沉迷于FIFA22的Rivals排位上分。在该排位系统中,每局游戏可能有胜利(用W表示)、失败(用L表示)、平局(用D表示)三种结果,胜利将使得排位分加一、失败使排位分减一、平局使排位分不变。特别地,该排位系统有着存档点机制,其可以简化的描述为:若你当前的排位分是3的整倍数(包括0倍),则若下一局游戏失败,你的排位分将不变(而不是减一)。现在,给定一个游戏结果字符串和若干次询问,你需要回答这些询问。每
2022-04-27 22:57:00
1778
原创 天梯L2-014 列车调度 (25 分)【二分】
Date:2022.04.20题意描述:火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N (2 ≤ N ≤10^5),下一行给出从1到N的整数序号的一个重排列。
2022-04-20 17:59:41
265
原创 天梯L2-011 玩转二叉树 (25 分)【求二叉树的遍历序列】
Date:2022.04.19题意描述:给定一棵二叉树的中序遍历和前序遍历,请你先将树做个镜面反转,再输出反转后的层序遍历的序列。所谓镜面反转,是指将所有非叶结点的左右孩子对换。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其中序遍历序列。第三行给出其前序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树反转后的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:71 2 3 4 5 6 74 1
2022-04-19 19:09:33
172
原创 天梯L2-006 树的遍历 (25 分)【求二叉树的遍历序列】
Date:2022.04.19题意描述:给定一棵二叉树的后序遍历和中序遍历,请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。输入格式:输入第一行给出一个正整数N(≤30),是二叉树中结点的个数。第二行给出其后序遍历序列。第三行给出其中序遍历序列。数字间以空格分隔。输出格式:在一行中输出该树的层序遍历的序列。数字间以1个空格分隔,行首尾不得有多余空格。输入样例:72 3 1 5 7 6 41 2 3 4 5 6 7输出样例:4 1 6 3 5 7 2思路:二叉树中,给出中
2022-04-19 18:53:50
141
原创 天梯L2-004 这是二叉搜索树吗?(25分)【判定BST+重构树】
Date:2022.04.19题意描述:一棵二叉搜索树可被递归地定义为具有下列性质的二叉树:对于任一结点,其左子树中所有结点的键值小于该结点的键值;其右子树中所有结点的键值大于等于该结点的键值;其左右子树都是二叉搜索树。所谓二叉搜索树的“镜像”,即将所有结点的左右子树对换位置后所得到的树。给定一个整数键值序列,现请你编写程序,判断这是否是对一棵二叉搜索树或其镜像进行前序遍历的结果。输入格式:输入的第一行给出正整数 N(≤1000)。随后一行给出 N 个整数键值,其间以空格分隔。输出格式:
2022-04-19 16:49:58
153
原创 天梯2021 L2-11.完全二叉树的层序遍历(25分)【递归】
Date:2022.04.14题意描述:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是完美二叉树。对于深度为 D 的,有 N 个结点的二叉树,若其结点对应于相同深度完美二叉树的层序遍历的前 N 个结点,这样的树就是完全二叉树。给定一棵完全二叉树的后序遍历,请你给出这棵树的层序遍历结果。输入格式:输入在第一行中给出正整数 N(≤30),即树中结点个数。第二行给出后序遍历序列,为 N 个不超过 100 的正整数。同一行中所有数字都以空格分隔。输出格式:在一行中输出该树的层序遍历序列
2022-04-15 00:27:40
197
原创 第五届蓝桥杯省赛CA-10.波动数列【DP+同余】
Date:2022.04.13题意描述:观察这个数列:1 3 0 2 -1 1 -2 …这个数列中后一项总是比前一项增加2或者减少3,且每一项都为整数。栋栋对这种数列很好奇,他想知道长度为 n 和为 s 而且后一项总是比前一项增加 a 或者减少 b 的整数数列可能有多少种呢?输入格式共一行,包含四个整数 n,s,a,b,含义如前面所述。输出格式共一行,包含一个整数,表示满足条件的方案数。由于这个数很大,请输出方案数除以 100000007 的余数。数据范围1≤n≤10001≤n≤10
2022-04-14 02:38:36
203
原创 洛谷P1052 [NOIP2005 提高组] 过河【DP+路径压缩】
Date:2022.04.13题目描述在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧。在桥上有一些石子,青蛙很讨厌踩在这些石子上。由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0,1,⋯,L(其中 LL 是桥的长度)。坐标为 0 的点表示桥的起点,坐标为 L 的点表示桥的终点。青蛙从桥的起点开始,不停的向终点方向跳跃。一次跳跃的距离是 S 到 T 之间的任意正整数(包括 S,T)。当青蛙跳到或跳过坐标 L 的点时,就算青蛙已经跳出了独木
2022-04-14 01:42:12
635
原创 【一本通】C循环【exgcd】
Date:2022.04.13题意描述:对于 C 语言的循环语句,形如:for (variable = A; variable != B; variable += C)statement;请问在 k 位存储系统中循环几次才会结束。若在有限次内结束,则输出循环次数。否则输出死循环。输入格式多组数据,每组数据一行四个整数 A,B,C,k。读入以 0 0 0 0 结束。输出格式若在有限次内结束,则输出循环次数。否则输出 FOREVER。数据范围1≤k≤32,0≤A,B,C<2^
2022-04-13 17:56:36
527
原创 第四届蓝桥杯省赛CA-10.大臣的旅费【树形DP】
Date:2022.04.13题意描述:很久以前,T王国空前繁荣。为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市。为节省经费,T国的大臣们经过思考,制定了一套优秀的修建方案,使得任何一个大城市都能从首都直接或者通过其他大城市间接到达。同时,如果不重复经过大城市,从首都到达每个大城市的方案都是唯一的。J是T国重要大臣,他巡查于各大城市之间,体察民情。所以,从一个城市马不停蹄地到另一个城市成了J最常做的事情。他有一个钱袋,用于存放往来城市间的路费。聪明的J发现,如果
2022-04-13 15:41:20
123
原创 【进阶指南】玉米田【状压DP】
Date:2022.04.08题意描述:农夫约翰的土地由 M×N 个小方格组成,现在他要在土地里种植玉米。非常遗憾,部分土地是不育的,无法种植。而且,相邻的土地不能同时种植玉米,也就是说种植玉米的所有方格之间都不会有公共边缘。现在给定土地的大小,请你求出共有多少种种植方法。土地上什么都不种也算一种方法。输入格式第 1 行包含两个整数 M 和 N。第 2…M+1 行:每行包含 N 个整数 0 或 1,用来描述整个土地的状况,1 表示该块土地肥沃,0 表示该块土地不育。输出格式输出总种植方
2022-04-08 21:24:30
488
原创 【一本通】小国王【状压DP】
Date:2022.04.08题意描述:在 n×n 的棋盘上放 k 个国王,国王可攻击相邻的 8 个格子,求使它们无法互相攻击的方案总数。输入格式共一行,包含两个整数 n 和 k。输出格式共一行,表示方案总数,若不能够放置则输出0。数据范围1≤n≤10,0≤k≤n2输入样例:3 2输出样例:16思路:f[i][j][k]:f[i][j][k]:f[i][j][k]:已经在前iii行摆完kkk个国王,其中第iii行摆放方式固定为jjj的合法摆放方案数。count(i):count
2022-04-08 18:08:59
383
原创 【进阶指南】最短Hamilton路径【状压DP】
Date:2022.04.07题意描述:给定一张 n 个点的带权无向图,点从 0∼n−1 标号,求起点 0 到终点 n−1 的最短 Hamilton 路径。Hamilton 路径的定义是从 0 到 n−1 不重不漏地经过每个点恰好一次。输入格式第一行输入整数 n。接下来 n 行每行 n 个整数,其中第 i 行第 j 个整数表示点 i 到 j 的距离(记为 a[i,j])。对于任意的 x,y,z,数据保证 a[x,x]=0,a[x,y]=a[y,x] 并且 a[x,y]+a[y,z]≥a[x,z
2022-04-08 16:33:00
829
原创 【进阶指南】蒙德里安的梦想【状压DP】
Date:2022.04.07题意描述:求把 N×M 的棋盘分割成若干个 1×2 的长方形,有多少种方案。例如当 N=2,M=4 时,共有 5 种方案。当 N=2,M=3 时,共有 3 种方案。如下图所示:输入格式输入包含多组测试用例。每组测试用例占一行,包含两个整数 N 和 M。当输入用例 N=0,M=0 时,表示输入终止,且该用例无需处理。输出格式每个测试用例输出一个结果,每个结果占一行。数据范围1≤N,M≤11输入样例:1 21 31 42 22 32 42 1
2022-04-08 15:27:42
916
原创 第十一届蓝桥杯省赛CB第一场-9.整数拼接【同余】
Date:2022.04.06题意描述:给定一个长度为 n 的数组 A1,A2,⋅⋅⋅,An。你可以从中选出两个数 Ai 和 Aj(i 不等于 j),然后将 Ai 和 Aj 一前一后拼成一个新的整数。例如 12 和 345 可以拼成 12345 或 34512。注意交换 Ai 和 Aj 的顺序总是被视为 2 种拼法,即便是 Ai=Aj 时。请你计算有多少种拼法满足拼出的整数是 K 的倍数。输入格式第一行包含 2 个整数 n 和 K。第二行包含 n 个整数 A1,A2,⋅⋅⋅,An。输出格
2022-04-07 03:01:49
296
原创 第十一届蓝桥杯省赛CB第一场-10.网络分析【带权并查集】
Date:2022.04.06题意描述:小明正在做一个网络实验。他设置了 n 台电脑,称为节点,用于收发和存储数据。初始时,所有节点都是独立的,不存在任何连接。小明可以通过网线将两个节点连接起来,连接后两个节点就可以互相通信了。两个节点如果存在网线连接,称为相邻。小明有时会测试当时的网络,他会在某个节点发送一条信息,信息会发送到每个相邻的节点,之后这些节点又会转发到自己相邻的节点,直到所有直接或间接相邻的节点都收到了信息。所有发送和接收的节点都会将信息存储下来。一条信息只存储一次。给出小
2022-04-07 00:37:03
311
原创 【进阶指南】合并果子【哈夫曼树/贪心】
Date:2022.04.06题意描述:在一个果园里,达达已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。达达决定把所有的果子合成一堆。每一次合并,达达可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和。可以看出,所有的果子经过 n−1 次合并之后,就只剩下一堆了。达达在合并果子时总共消耗的体力等于每次合并所耗体力之和。因为还要花大力气把这些果子搬回家,所以达达在合并果子时要尽可能地节省体力。假定每个果子重量都为 1,并且已知果子的种类数和每种果子的数目,你的任务是设计
2022-04-06 22:02:53
145
原创 第七届蓝桥杯省赛CB-10.最大比例【gcd+辗转相减(更相减损)】
Date:2022.04.06题意描述:X星球的某个大奖赛设了 M 级奖励。每个级别的奖金是一个正整数。并且,相邻的两个级别间的比例是个固定值。也就是说:所有级别的奖金数构成了一个等比数列。比如:16,24,36,54,其等比值为:3/2。现在,我们随机调查了一些获奖者的奖金数。请你据此推算可能的最大的等比值。输入格式第一行为数字 N ,表示接下的一行包含 N 个正整数。第二行 N 个正整数 Xi,用空格分开,每个整数表示调查到的某人的奖金数额。输出格式一个形如 A/B 的分数,要
2022-04-06 12:10:02
490
原创 洛谷P1351 [NOIP2014 提高组] 联合权值【树形DP】【绿】
Date:2022.04.04题目描述无向连通图 G 有 n 个点,n-1 条边。点从 1 到 n 依次编号,编号为 i 的点的权值为 Wi,每条边的长度均为 1。图上两点 (u, v) 的距离定义为 u 点到 v 点的最短距离。对于图 G 上的点对 (u, v),若它们的距离为 2,则它们之间会产生Wv×Wu的联合权值。请问图 G 上所有可产生联合权值的有序点对中,联合权值最大的是多少?所有联合权值之和是多少?输入格式第一行包含 1 个整数 n。接下来 n−1 行,每行包含 2 个用空格隔开的
2022-04-06 01:22:05
282
原创 【进阶指南】战略游戏【树形DP】
Date:2022.03.29题意描述:鲍勃喜欢玩电脑游戏,特别是战略游戏,但有时他找不到解决问题的方法,这让他很伤心。现在他有以下问题。他必须保护一座中世纪城市,这条城市的道路构成了一棵树。每个节点上的士兵可以观察到所有和这个点相连的边。他必须在节点上放置最少数量的士兵,以便他们可以观察到所有的边。你能帮助他吗?例如,下面的树:只需要放置 1 名士兵(在节点 1 处),就可观察到所有的边。输入格式输入包含多组测试数据,每组测试数据用以描述一棵树。对于每组测试数据,第一行包含整数
2022-04-06 00:30:27
3546
原创 【进阶指南】糖果传递【贪心】
Date:2022.04.05题意描述:有 n 个小朋友坐成一圈,每人有 a[i] 个糖果。每人只能给左右两人传递糖果。每人每次传递一个糖果代价为 1。求使所有人获得均等糖果的最小代价。输入格式第一行输入一个正整数 n,表示小朋友的个数。接下来 n 行,每行一个整数 a[i],表示第 i 个小朋友初始得到的糖果的颗数。输出格式输出一个整数,表示最小代价。数据范围1≤n≤1000000,0≤a[i]≤2×109,数据保证一定有解。输入样例:41254输出样例:4思
2022-04-05 16:07:30
823
原创 【进阶指南】货仓选址【贪心】
Date:2022.04.03题意描述:在一条数轴上有 N 家商店,它们的坐标分别为 A1∼AN。现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。输入格式第一行输入整数 N。第二行 N 个整数 A1∼AN。输出格式输出一个整数,表示距离之和的最小值。数据范围1≤N≤100000,0≤Ai≤40000输入样例:46 2 9 1输出样例:12思路:核心思想:绝对值不等式。假设有俩点
2022-04-05 11:31:52
394
原创 洛谷P1687 机器人小Q【DP】【绿】
Date:2022.04.04题目描述成功派送完这个大单后,餐厅决定引入一名新成员:机器人小 Q。小 Q 的到来让餐厅的客源增加了不少,但是,一段时间之后,新的问题又出现了,小 Q 和我们可不一样,如果要让他工作的话,我们得给他输入能量以保持体力,而小 Q 的能量菜单表上已经按一定顺序给出了 N 个单位的能量值,但是每个单位的能量由于来源不同,需要消耗一定的时间摄入。已知小 Q 每天充电的时间上限值为 119,如果时间超出的话就会自动崩溃,大家都想让小 Q 留下来,经过研究之后,决定派 HWX 和 XY
2022-04-05 00:03:26
434
原创 【进阶指南】洛谷P1073 [NOIP2009 提高组] 最优贸易【DP+spfa】【绿】
Date:2022.04.04题意描述:C国有n个大城市和m 条道路,每条道路连接这 n个城市中的某两个城市。任意两个城市之间最多只有一条道路直接相连。这 m 条道路中有一部分为单向通行的道路,一部分为双向通行的道路,双向通行的道路在统计条数时也计为 1条。C国幅员辽阔,各地的资源分布情况各不相同,这就导致了同一种商品在不同城市的价格不一定相同。但是,同一种商品在同一个城市的买入价和卖出价始终是相同的。商人阿龙来到 C 国旅游。当他得知同一种商品在不同城市的价格可能会不同这一信息之后,便决定在旅游的
2022-04-04 16:28:59
243
原创 【背包九讲】有依赖的背包问题【树形DP+分组背包优化】
Date:2022.03.29题意描述:有 N 个物品和一个容量是 V 的背包。物品之间具有依赖关系,且依赖关系组成一棵树的形状。如果选择一个物品,则必须选择它的父节点。如下图所示:如果选择物品5,则必须选择物品1和2。这是因为2是5的父节点,1是2的父节点。每件物品的编号是 i,体积是 vi,价值是 wi,依赖的父节点编号是 pi。物品的下标范围是 1…N。求解将哪些物品装入背包,可使物品总体积不超过背包容量,且总价值最大。输出最大价值。输入格式第一行有两个整数 N,V,用空格隔开,
2022-04-04 02:25:37
696
原创 洛谷P1651 塔【DP】【绿】
Date:2022.04.03题目描述小明很喜欢摆积木,现在他正在玩的积木是由 N 个木块组成的,他想用这些木块搭出两座高度相同的塔,一座塔的高度是搭建它的所有木块的高度和,并且一座塔至少要用一个木块。每个木块只能用一次,也可以不用。目前已知每块木块的高度,小明想知道在最终两个塔的高度相同的情况下,他所能搭的塔的最大高度是多少,你能帮助他吗?输入格式第一行为一个整数 N,表示木块个数。第二行是 N 个整数,表示 N 块木块的高度。输出格式仅一个整数,表示能搭建的塔的最大高度,若不能搭建两座相同
2022-04-04 02:11:16
306
原创 【一本通】数字转换【树形DP】
Date:2022.03.29题意描述:如果一个数 x 的约数之和 y(不包括他本身)比他本身小,那么 x 可以变成 y,y 也可以变成 x。例如,4 可以变为 3,1 可以变为 7。限定所有数字变换在不超过 n 的正整数范围内进行,求不断进行数字变换且不出现重复数字的最多变换步数。输入格式输入一个正整数 n。输出格式输出不断进行数字变换且不出现重复数字的最多变换步数。数据范围1≤n≤50000输入样例:7输出样例:3样例解释一种方案为:4→3→1→7。思路:总体思路同树的
2022-04-03 01:50:02
344
原创 第九届蓝桥杯省赛CB 8.日志统计【双指针】
Date:2022.04.02题意描述:小明维护着一个程序员论坛。现在他收集了一份”点赞”日志,日志共有 N 行。其中每一行的格式是:ts id表示在 ts 时刻编号 id 的帖子收到一个”赞”。现在小明想统计有哪些帖子曾经是”热帖”。如果一个帖子曾在任意一个长度为 D 的时间段内收到不少于 K 个赞,小明就认为这个帖子曾是”热帖”。具体来说,如果存在某个时刻 T 满足该帖在 [T,T+D) 这段时间内(注意是左闭右开区间)收到不少于 K 个赞,该帖就曾是”热帖”。给定日志,请你帮助小明统
2022-04-02 18:19:30
102
原创 【一本通】数星星【BIT】
Date:2022.04.02题意描述:天空中有一些星星,这些星星都在不同的位置,每个星星有个坐标。如果一个星星的左下方(包含正左和正下)有 k 颗星星,就说这颗星星是 k 级的。例如,上图中星星 5 是 3 级的(1,2,4 在它左下),星星 2,4 是 1 级的。例图中有 1 个 0 级,2 个 1 级,1 个 2 级,1 个 3 级的星星。给定星星的位置,输出各级星星的数目。换句话说,给定 N 个点,定义每个点的等级是在该点左下方(含正左、正下)的点的数目,试统计每个等级有多少个点。
2022-04-02 02:14:30
126
原创 第五届蓝桥杯省赛CB 10.小朋友排队【BIT】
Date:2022.04.02题意描述:n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是 0。如果某个小朋友第一次被要求交换,则他的不高兴程度增加 1,如果第二次要求他交换,则他的不高兴程度增加 2(即不高兴程度为 3),依次类推。当要求某个小朋友第 k 次交换时,他的不高兴程度增加 k。请问,要让所有小朋友按从低到高排队,他们的不高兴程度之和最小是多少。如果有两个小朋友
2022-04-02 02:10:41
95
原创 第九届蓝桥杯省赛CB 7.螺旋折线【思维】
Date:2022.04.01题意描述:如下图所示的螺旋折线经过平面上所有整点恰好一次。对于整点 (X,Y),我们定义它到原点的距离 dis(X,Y) 是从原点到 (X,Y) 的螺旋折线段的长度。例如 dis(0,1)=3,dis(−2,−1)=9给出整点坐标 (X,Y),你能计算出 dis(X,Y) 吗?输入格式包含两个整数 X,Y。输出格式输出一个整数,表示 dis(X,Y)。数据范围−109≤X,Y≤109输入样例:0 1输出样例:3思路:观察可得找到绝对值最大的横纵
2022-04-02 01:58:21
313
原创 【进阶指南】数据结构 - 一个简单的整数问题【差分+BIT】
Date:2022.04.01题意描述:给定长度为 N 的数列 A,然后输入 M 行操作指令。第一类指令形如 C l r d,表示把数列中第 l∼r 个数都加 d。第二类指令形如 Q x,表示询问数列中第 x 个数的值。对于每个询问,输出一个整数表示答案。输入格式第一行包含两个整数 N 和 M。第二行包含 N 个整数 A[i]。接下来 M 行表示 M 条指令,每条指令的格式如题目描述所示。输出格式对于每个询问,输出一个整数表示答案。每个答案占一行。数据范围1≤N,M≤105,|
2022-04-01 16:43:46
320
原创 【进阶指南】数据结构 - 楼兰图腾【BIT】
Date:2022.04.01题意描述:在完成了分配任务之后,西部 314 来到了楼兰古城的西部。相传很久以前这片土地上(比楼兰古城还早)生活着两个部落,一个部落崇拜尖刀(V),一个部落崇拜铁锹(∧),他们分别用 V 和 ∧ 的形状来代表各自部落的图腾。西部 314 在楼兰古城的下面发现了一幅巨大的壁画,壁画上被标记出了 n 个点,经测量发现这 n 个点的水平位置和竖直位置是两两不同的。西部 314 认为这幅壁画所包含的信息与这 n 个点的相对位置有关,因此不妨设坐标分别为 (1,y1),(2,y
2022-04-01 16:23:10
122
2
原创 【一本通】五指山【exgcd】
Date:2022.03.31题意描述:大圣在佛祖的手掌中。我们假设佛祖的手掌是一个圆圈,圆圈的长为 n,逆时针记为:0,1,2,…,n−1,而大圣每次飞的距离为 d。现在大圣所在的位置记为 x,而大圣想去的地方在 y。要你告诉大圣至少要飞多少次才能到达目的地。注意:孙悟空的筋斗云只沿着逆时针方向翻。输入格式有多组测试数据。第一行是一个正整数 T,表示测试数据的组数;每组测试数据包括一行,四个非负整数,分别为如来手掌圆圈的长度 n,筋斗所能飞的距离 d,大圣的初始位置 x 和大圣想去的地
2022-04-01 10:34:50
177
原创 解线性同余方程【exgcd】
Date:2022.03.31题目描述:给定 n 组数据 ai,bi,mi,对于每组数求出一个 xi,使其满足 ai×xi≡bi(modmi),如果无解则输出 impossible。输入格式第一行包含整数 n。接下来 n 行,每行包含一组数据 ai,bi,mi。输出格式输出共 n 行,每组数据输出一个整数表示一个满足条件的 xi,如果无解则输出 impossible。每组数据结果占一行,结果可能不唯一,输出任意一个满足条件的结果均可。输出答案必须在 int 范围之内。数据范围1≤n≤1
2022-04-01 09:49:48
623
原创 树的重心【树形DP】
Date:2022.03.29思路:对于一个结点uuu,与其距离最远的点可能有两种情况:①在其下方:显然是向下走距离uuu的最远距离,记为down1[u]down1[u]down1[u]。②在其上方:记为up[u],up[u],up[u],仍然分为两种情况。(1)从它的父节点fa[u]fa[u]fa[u]再往上走:此时up[u]=up[fa[u]]+g[u][fa[u]];up[u]=up[fa[u]]+g[u][fa[u]];up[u]=up[fa[u]]+g[u][fa[u]];(2)从它的
2022-03-31 01:56:31
234
原创 树的最长路径【树形DP】
Date:2022.03.29题意描述:给定一棵树,树中包含 n 个结点(编号1~n)和 n−1 条无向边,每条边都有一个权值。现在请你找到树中的一条最长路径。换句话说,要找到一条路径,使得使得路径两端的点的距离最远。注意:路径中可以只包含一个点。输入格式第一行包含整数 n。接下来 n−1 行,每行包含三个整数 ai,bi,ci,表示点 ai 和 bi 之间存在一条权值为 ci 的边。输出格式输出一个整数,表示树的最长路径的长度。数据范围1≤n≤10000,1≤ai,bi≤n,−
2022-03-31 01:36:25
906
原创 【进阶指南】- DP.没有上司的舞会【树形DP】
Date:2022.03.29题目描述:Ural 大学有 N 名职员,编号为 1∼N。他们的关系就像一棵以校长为根的树,父节点就是子节点的直接上司。每个职员有一个快乐指数,用整数 Hi 给出,其中 1≤i≤N。现在要召开一场周年庆宴会,不过,没有职员愿意和直接上司一起参会。在满足这个条件的前提下,主办方希望邀请一部分职员参会,使得所有参会职员的快乐指数总和最大,求这个最大值。输入格式第一行一个整数 N。接下来 N 行,第 i 行表示 i 号职员的快乐指数 Hi。接下来 N−1 行,每行输
2022-03-31 01:03:14
272
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人