解题思路
文章平均质量分 68
是某ICPC蒟蒻了
只会加罚时
展开
-
一道经典题的算法证明
Tree I题目:给定一个无向带权连通图,每条边是黑色或白色。试求恰好有条kkk黑色边的生成树的最小权值和。(By WJMZBMR)一些记号f(x)≔f(x)\coloneqqf(x):=恰好有xxx条黑色边的生成树的最小权值和S(x)≔S(x)\coloneqqS(x):=所有黑色边权值加上xxx之后的MST的值凸函数性质讨论直觉上,fff应该是函数的,因此先探讨下假如fff是凸函数时具有哪些性质。将所有(x,f(x))(x,f(x))(x,f(x))用直线连接起来,可以得到一个凸包。原创 2021-07-30 00:54:19 · 199 阅读 · 0 评论 -
图的删边处理
由于能处理图删边的工具较少,通常在遇上要对图删边的问题时,将其转化为添边处理。例如:Graph and Queries题意:给定一个无向图,每个点具有权值。有三种操作:删除一条边(保证一条边至多被删除一次);计算与xxx连通的点中,第kkk大的权值,若不存在则输出0;结点xxx权值变为vvv。求经过一系列操作好,所有第二类操作的输出的平均值。思路:由于只有删边没有添边,可以将操作记录下来离线处理。按所有删边操作之后的结果建图,再对原来的操作逆向进行,删边就转化成了添边,用邻接表储存即可。AC代原创 2021-05-17 21:00:13 · 1399 阅读 · 0 评论 -
多路归并问题(多个有序表合为一个有序表)
给定k个有序表(不妨假设均为升序),求这k个有序表中最小的n个元素,这类问题称为多路归并问题。对于这类问题,考虑先取出每个有序表中的最小的元素,在取出的这些元素中的最小值即为所有元素的最小值,必然要被选中。根据每个表的有序性,在某个元素的前一个元素未被选中时,该元素必定不会被选中。因此,每次选中了一个元素后,它的后一个元素才会被考虑。所以在上述第一批取出的k个元素中,先取出最小的一个,再将其后一个元素加入待选取的元素中,然后考虑新的待选取元素的集合,选取其中最小的元素,以此即可选出第二小的元素。从而可原创 2021-04-25 16:10:45 · 573 阅读 · 0 评论 -
处理图形位于两条不交叉曲线之间的面积
若需要计算图形位于两条曲线S1,S2S_1,S_2S1,S2之间的面积,并且两条曲线是不交叉的,则可以分别计算位于S1S_1S1下的面积和位于S2S_2S2下的面积即可。例如Joining with Friend题意:一辆火车会在时间区间[t1,t2][t_1,t_2][t1,t2]内以相同的概率密度到达车站,另一辆火车会在时间区间[s1,s2][s_1,s_2][s1,s2]内以相同的概率密度到达车站。若火车到站会停靠www单位时间,求出现两火车同时在车站的概率。思路:题目可以转原创 2021-04-20 19:41:27 · 217 阅读 · 0 评论 -
带优先级的多最值目标问题
给定一系列目标a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an,考虑在满足a1a_1a1取最值的情况下a2a_2a2取最值,再在此情况下a3a_3a3取最值,以此类推,将此类问题归为带优先级的多最值目标问题。因为不同变量之间可能具有关联,所以不能简单的分开求最值。本文仅考虑a1,a2,...,ana_1,a_2,...,a_na1,a2,...,an均为离散变量且除a1a_1a1外均有界,不妨设ai∈Za_i\in \Zai∈Z。事实上,一些取最大值的目原创 2021-04-08 20:00:26 · 407 阅读 · 0 评论 -
浮点计算问题转化成整数计算问题
在某些看似涉及浮点计算的问题中,其实可以通过一些手段转化成整数计算问题,从而保证精度。例如POJ3347题意:依次给出n个正方形的边长,要求在第一象限内依次放入正方形,满足:①放入第i个正方形时,第i个正方形与前面的正方形都不重合;②放入正方形时,要求一个顶点在x轴上,且坐标值最小。求放完所有正方形后,从高处向下照射竖直平行光,未被完全遮挡的正方形的序号。思路:本题在求解时用到的数据是每个正方形覆盖的区间,即与正方形的斜对角线长度相关。而给出的正方形边长是整数,则斜对角线为一个整数乘上sqrt(2)。原创 2021-03-31 19:51:56 · 625 阅读 · 0 评论