![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
kuangbin专题
kuangbin专题
保安在哪里啊
这个作者很懒,什么都没留下…
展开
-
POJ 1308 Is It A Tree?(并查集)
POJ 1308 Is It A Tree?(并查集)vj链接Solution和 HDU 1272 一毛一样。。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set>#include <stdio.h>#include <string.h>#原创 2021-10-28 21:54:09 · 165 阅读 · 0 评论 -
HDU 1272 小希的迷宫(并查集)
HDU 1272 小希的迷宫(并查集)vj链接Solution并查集模板题,注意如果案例只有 0 0 ,需要输出yes代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set>#include <stdio.h>#include <string.h>原创 2021-10-28 21:52:40 · 155 阅读 · 0 评论 -
POJ 2912 Rochambeau(枚举 + 并查集)
POJ 2912 Rochambeau(枚举 + 并查集)vj链接Solution枚举每个人能否作为裁判,记录能作为裁判的人的个数,超过一个则为 Impossible,0 个则为不能确定。记录最早判断裁判的轮次:最晚出现自相矛盾的轮次。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include原创 2021-10-28 21:50:52 · 131 阅读 · 0 评论 -
POJ 2492 A Bug‘s Life(带权并查集)
POJ 2492 A Bug’s Life(带权并查集)vj链接Solution和POJ 1733 非常像,可以说是 1733 的青春版。。。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set>#include <stdio.h>#include <原创 2021-10-28 21:44:54 · 79 阅读 · 0 评论 -
POJ 1984 Navigation Nightmare(带权并查集)
POJ 1984 Navigation Nightmare(带权并查集)vj链接Solution乍一看似乎不太好求曼哈顿距离,但是思考后可以发现,只需要维护上下和左右两个方向的距离,计算时将两个的绝对值相加即为曼哈顿距离。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set&g原创 2021-10-28 21:41:09 · 61 阅读 · 0 评论 -
POJ 1733 Parity game(离散化 + 并查集)
POJ 1733 Parity game(离散化 + 并查集)vj链接Solution跟 POJ 的那道食物链很像,这里是的环是两个节点,食物链的环是三个节点,其实就是把模数换成 2 即可。数据范围较大,个数较少,使用离散化。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <se原创 2021-10-28 21:35:45 · 77 阅读 · 0 评论 -
POJ 1456 Supermarket (贪心枚举 + 并查集)
POJ 1456 Supermarket (贪心枚举 + 并查集)vj链接Solution(暴力)按权值从大到小排序,从结束日期开始往前枚举判断是否能安排。(并查集优化)待补。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set>#include <stdio.原创 2021-10-28 21:30:39 · 93 阅读 · 0 评论 -
POJ 1182 食物链(带权并查集)
POJ 1182 食物链(带权并查集)vj链接Solution与带权并查集做法类似,由于三者关系是一个环,可以使用取模运算来实现。代码#include <algorithm>#include <cmath>#include <iostream>#include <map>#include <queue>#include <set>#include <stdio.h>#include <strin原创 2021-10-28 21:18:57 · 62 阅读 · 0 评论 -
HDU 3038 How Many Answers Are Wrong(带权并查集)
HDU 3038 How Many Answers Are Wrong(带权并查集)vj链接Solution带权并查集好题。先把区间和从左闭右闭变为左闭右开,方便我们写并查集。即把 [a, b] 变为 [a, b + 1)然后就是权值的更新 (想了好久,果然还是太菜了。。)代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include&原创 2021-10-22 22:41:50 · 58 阅读 · 0 评论 -
HDU 1213 How Many Tables(并查集)
HDU 1213 How Many Tables(并查集)vj链接Solution并查集模板题。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#include<string>#include<q原创 2021-10-22 21:52:26 · 85 阅读 · 0 评论 -
POJ 1611The Suspects(并查集)
POJ 1611The Suspects(并查集)vj链接Solution并查集模板题,最后找一遍有多少和 0 点在同一集合即可。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#include<string&原创 2021-10-22 21:50:22 · 71 阅读 · 0 评论 -
POJ 2236 Wireless Network(并查集)
POJ 2236 Wireless Network(并查集)vj链接Solution并查集模板题,套板子就行。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#include<string>#inclu原创 2021-10-22 21:48:08 · 41 阅读 · 0 评论 -
POJ 3169 Layout(差分约束)
POJ 3169 Layout(差分约束)vj链接Solution参考: https://xiaoxiaoh.blog.csdn.net/article/details/104216970代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<原创 2021-10-22 21:46:05 · 68 阅读 · 0 评论 -
HDU 4725 The Shortest Path in Nya Graph(分层图 + dij)
HDU 4725 The Shortest Path in Nya Graph(分层图 + dij)vj链接Solution在每一层建一个虚拟入点和出点。每层的所有点向虚拟出点连一条权值 0 的单向边;每层的虚拟入点向所有本层的点连一条权值为 0 的单向边;每层的出点向上一层和下一层的入点连一条权值为 c 的单向边;跑一遍dij即可代码#include<stdio.h>#include<string.h>#include<algorithm>#in原创 2021-10-22 21:42:32 · 58 阅读 · 0 评论 -
POJ 3159 Candies(差分约束、dij堆优化)
POJ 3159 Candies(差分约束、dij堆优化)vj链接Solution差分约束好题xB−xA≤cx_B - x_A \leq cxB−xA≤c 可以变为:xB≤c+xAx_B \leq c + x_AxB≤c+xA因此,我们可以建一条 A 到 B 的边,题目求 xn−x1x_n - x_1xn−x1 的最大值,即求从 x1x_1x1 到 xnx_nxn 的最短路。代码...原创 2021-10-21 21:37:14 · 44 阅读 · 0 评论 -
Light OJ 1074 Extended Traffic(floyd判负环)
Light OJ 1074 Extended Traffic(floyd找负环)vj链接Solution我发现网上此题好像没有 floyd 的题解,那么我就来写一发。使用 floyd 判负环时,我们可以跑一遍 floyd,然后遍历所有的点,如果此点到自己的距离小于 0,说明其一定在负环内,那我们就以此点作为起点,dfs 染色所有负环内的点(可参考 spfa 解法)注意这里 inf 的值比初始化 dis 数组时的值要小一些,因为松弛时有可能出现 0x3f3f3f3f + (一个小于0的值),此时我们原创 2021-10-21 21:21:28 · 111 阅读 · 0 评论 -
POJ 1847 Tram(folyd + 思维)
POJ 1847 Tram(folyd + 思维)vj链接Solution乍一看可能会觉得跑最短路时需要改路径的值,但我们仔细思考后会发现,我们在最短路径上走过的点一定不会再走回来,如果有回头路,那么我们完全可以不走到前面的点。因此只需要按题意建边权为 0 和 1 的边即可。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<原创 2021-10-21 21:13:45 · 67 阅读 · 0 评论 -
POJ 1602 昂贵的聘礼(区间枚举 + dij堆优化)
POJ 1602 昂贵的聘礼(区间枚举 + dij堆优化)vj链接Solution一开始以为是相邻的两个人等级不能超过m。。wa了好多发观察到点的总数不超过 100,那么只要区间 [level[1]−m,level[1]][level[1]-m,level[1]][level[1]−m,level[1]] 为下界,每次跑一遍 dij 即可,最多跑 m 次,如果使用离散化处理的话可以优化到最多跑 100 次 (数据水了所以代码里没用)代码#include<stdio.h>#inclu原创 2021-10-21 21:08:08 · 79 阅读 · 0 评论 -
POJ 2502 Subway(dij堆优化)
POJ 2502 Subway(dij堆优化)vj链接Solutiondij 模板题,注意细节速度单位是 km/h,距离单位是 m, 输出时间单位是 min代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#incl原创 2021-10-21 20:59:05 · 71 阅读 · 0 评论 -
POJ 2240 Arbitrage(map + floyed)
POJ 2240 Arbitrage(map + floyed)vj链接Solution最短路变形,只要最后有一点到自己的最长路大于 1 说明可以一直刷钱(floyed,我滴超人!)代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cm原创 2021-10-19 21:39:51 · 75 阅读 · 0 评论 -
POJ 3660 Cow Contest(floyed)
POJ 3660 Cow Contest(floyed)vj链接Solution挺有意思的一题。第一眼看以为是裸拓扑排序,但是本题要求的是有多少头牛可以有一个精确的排名,写 拓扑排序 的时候就会发现不好找出每头牛是否有精确的排名一头牛有精确排名,就意味着比这头牛强的和比这头牛弱的 两种牛数量加起来恰好为 n - 1 ,因此只要想办法找出比这头牛强的牛有多少,弱的有多少即可我们可以每次将强的牛向弱的牛连边,再使用 floyed 跑一遍最短路,从 A 到 B 的最短路程若不为 inf,则说明 A 一原创 2021-10-19 21:35:47 · 56 阅读 · 0 评论 -
POJ 1502 MPI Maelstrom(floyed模板题)
POJ 1502 MPI Maelstrom(floyed模板题)vj链接Solution模板题。。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#include<string>#include<原创 2021-10-19 21:27:55 · 130 阅读 · 0 评论 -
POJ 3259 Wormholes(SPFA判负环)
POJ 3259 Wormholes(SPFA判负环)vj链接Solutionspfa 模板题将虫洞的边权 作为负权边加进图中即可代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>#include<string原创 2021-10-19 21:25:38 · 69 阅读 · 0 评论 -
POJ 3268 Silver Cow Party(dij堆优化)
POJ 3268 Silver Cow Party(dij堆优化)vj链接Solution吐了这个POJ的评测机。。一道 dij 模板题,我用了堆优化建两张图跑两次 dij 即可,没啥要注意的细节代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#inclu原创 2021-10-18 22:46:32 · 53 阅读 · 0 评论 -
POJ 2253 Frogger (floyed,路径最小值最大化)
POJ 2253 Frogger (floyed,路径最小值最大化)vj链接Solution直接套 floyed 模板,更新的时候令 dis[i][j]=max(dis[i][j],min(dis[i][k],dis[k][j]))dis[i][j] = max(dis[i][j], min(dis[i][k], dis[k][j]))dis[i][j]=max(dis[i][j],min(dis[i][k],dis[k][j]))代码#include<stdio.h>#includ原创 2021-10-18 21:30:26 · 49 阅读 · 0 评论 -
POJ 1797 Heavy Transportation(最短路变形、最小距离最大化)
POJ 1797 Heavy Transportation(最短路变形、最小距离最大化)vj链接Solution每次取出最大边更新。注意重边和有些点可能无法到达的情况。代码#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>#include<vector>#include<map>#include<cmath>原创 2021-10-18 21:25:39 · 53 阅读 · 0 评论