转自 "hwzzyr的博客" kruskal重构树 由于重构树中把原树的点权转换成为了新建节点的边权,这一过程是这样实现的。 首先对边排序 然后使用并查集辅助加边,每新建一条边时: 新建节点indexindex(编号从n+1n+1开始) 将原有两节点所在集合改为indexindex 将原有节点与in ...
分类:
其他好文 时间:
2018-10-28 16:15:41
阅读次数:
235
A - Candy Game 水。 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 #define N 1010 5 int t, n; 6 int a[N], b[N]; 7 8 int main() 9 { 10 scanf("%d", ...
分类:
其他好文 时间:
2018-10-27 21:16:36
阅读次数:
149
P2873 [USACO07DEC]泥水坑Mud Puddles bfs入门。 对于坐标为负的情况,我们可以给数组下标加上$abs(min(minx,miny))$转正(根据题意判断) 1 #include<iostream> 2 #include<cstdio> 3 #include<cstrin ...
分类:
其他好文 时间:
2018-10-27 18:47:56
阅读次数:
150
P2872 [USACO07DEC]道路建设Building Roads kruskal求最小生成树。 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cmath> 5 #include<queue> 6 ...
分类:
其他好文 时间:
2018-10-27 18:42:20
阅读次数:
214
P2903 [USACO08MAR]麻烦的干草打包机The Loathesome Hay Baler 细节题。$O(n^{2})$的$bfs$可过。 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 #include<cstr ...
分类:
其他好文 时间:
2018-10-27 14:42:24
阅读次数:
179
P1353 [USACO08JAN]跑步Running 显然的dp 设$f[i][j]$表示进行到第$i$分钟时,$j$疲劳度下的最远距离,$d[i]$为第$i$分钟下能跑的距离 分类讨论 1.运动:显然$f[i][j]=max(f[i][j],f[i-1][j-1]+d[i])$ 2.休息:我们枚 ...
分类:
其他好文 时间:
2018-10-27 13:32:37
阅读次数:
124
悬线法是一种更优秀的枚举方式,保证了枚举悬线的集合包含了极大子矩形所在的集合,而且由最大子矩形一定是极大子矩形的定理可知,这种枚举方式可以求出最大子矩形。 具体做法是维护矩形中每个元素对应最近的左边和右边的障碍点,再维护一个高度数组记录下每个点向上可以延伸多高,还有对应的矩形向左向右可以到达的最大宽 ...
分类:
其他好文 时间:
2018-10-25 14:21:29
阅读次数:
141
思路:题意转化为求 (ax+by=dis) || (ax+cy=dis) || (bx+cy=dis) 三个式子有解时的最小|x| + |y|。显然求解特解x,y直接用扩展欧几里得,那么怎么求|x| + |y|?xy关系为一条直线,那么|x| + |y|应该是在x取0或者y取0的时候,但是要整数,所 ...
分类:
其他好文 时间:
2018-10-25 00:16:06
阅读次数:
160
A - Easy Number Game 水。 1 #include <bits/stdc++.h> 2 using namespace std; 3 4 #define ll long long 5 #define N 100010 6 ll arr[N]; 7 int n, m; 8 9 int ...
分类:
其他好文 时间:
2018-10-24 22:21:56
阅读次数:
209
"题目链接" FDNY to the Rescue! Time Limit: 2 Seconds Memory Limit: 65536 KB The Fire Department of New York (FDNY) has always been proud of their response ...
分类:
其他好文 时间:
2018-10-24 19:59:02
阅读次数:
165