魔法森林 题目传送门 解题思路 把每条路按照\(a\)的值从小到大排序.然后用LCT按照b的值维护最小生成树,将边按照顺序放入.如果\(1\)到\(n\)有了一条路径,就更新最小答案.这个过程就相当于枚举了每一个\(a\)作为最大的\(a\),然后求出了其对应的最小\(b\)的最大值. 代码如下 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int N = 300005; int fa[N],…
P2387 [NOI2014]魔法森林 题目描述 为了得到书法大家的真传,小 E 同学下定决心去拜访住在魔法森林中的隐 士.魔法森林可以被看成一个包含 n 个节点 m 条边的无向图,节点标号为 1,2,3,-,n,边标号为 1,2,3,-,m.初始时小 E 同学在 1 号节点,隐士则住在 n 号节点.小 E 需要通过这一片魔法森林,才能够拜访到隐士. 魔法森林中居住了一些妖怪.每当有人经过一条边的时候,这条边上的妖怪 就会对其发起攻击.幸运的是,在 1 号节点住着两种守护精灵:A 型守护精灵与…
题目描述 为了得到书法大家的真传,小 E 同学下定决心去拜访住在魔法森林中的隐 士.魔法森林可以被看成一个包含 n 个节点 m 条边的无向图,节点标号为 1,2,3,…,n,边标号为 1,2,3,…,m.初始时小 E 同学在 1 号节点,隐士则住在 n 号节点.小 E 需要通过这一片魔法森林,才能够拜访到隐士. 魔法森林中居住了一些妖怪.每当有人经过一条边的时候,这条边上的妖怪 就会对其发起攻击.幸运的是,在 1 号节点住着两种守护精灵:A 型守护精灵与 B 型守护精灵.小 E 可以借助它们的力…
[NOI2014]魔法森林 链接 loj 思路 a排序,b做动态最小生成树. 把边拆成点就可以了. uoj98.也许lct复杂度写假了..越卡常,越慢 代码 #include <bits/stdc++.h> #define ls c[x][0] #define rs c[x][1] using namespace std; const int N = 2e5 + 7; int read() { int x = 0, f = 1; char s = getchar(); for (;s >…
题目描述 为了得到书法大家的真传,小 E 同学下定决心去拜访住在魔法森林中的隐 士.魔法森林可以被看成一个包含 n 个节点 m 条边的无向图,节点标号为 1,2,3,…,n,边标号为 1,2,3,…,m.初始时小 E 同学在 1 号节点,隐士则住在 n 号节点.小 E 需要通过这一片魔法森林,才能够拜访到隐士. 魔法森林中居住了一些妖怪.每当有人经过一条边的时候,这条边上的妖怪 就会对其发起攻击.幸运的是,在 1 号节点住着两种守护精灵:A 型守护精灵与 B 型守护精灵.小 E 可以借助它们的力…
\(\color{#0066ff}{ 题目描述 }\) 为了得到书法大家的真传,小 E 同学下定决心去拜访住在魔法森林中的隐 士.魔法森林可以被看成一个包含 n 个节点 m 条边的无向图,节点标号为 1,2,3,-,n,边标号为 1,2,3,-,m.初始时小 E 同学在 1 号节点,隐士则住在 n 号节点.小 E 需要通过这一片魔法森林,才能够拜访到隐士. 魔法森林中居住了一些妖怪.每当有人经过一条边的时候,这条边上的妖怪 就会对其发起攻击.幸运的是,在 1 号节点住着两种守护精灵:A 型守护精…
题目大意:给定一个 N 个点,M 条边的无向图,边有两个边权 a, b,求从 1 号节点到 N 号节点路径的两个权值和的最大值最小是多少. 题解: 对于有两个属性的结构的最优化问题,可以考虑先按照其中一个分量进行排序.接着从小到大枚举这个有序的分量,计算以当前枚举到的值为这一分量的最大值时,全局的最优解是多少.因此,需要高效维护的是如何求出另一个分量的最优解. 对于这道题来说,考虑对 a 分量进行排序,并按从小到大的顺序依次加边.对于即将加入的第 i 条边来说,若加入这条边使得两个本来不联通的点…