Problem 给定一棵树和若干个点对 \((u,v)\) 给出的树上最短路径,求满足 路径交仅有一个点 的 无序 路径对(即 \((a,b)\) 和 \((b,a)\) 算一次)。 Sol & Code 交仅为一个点只有两种情况:两条路径 LCA 在同一个点或不在同一个点。 分别计算。第一种使用容 ...
分类:
其他好文 时间:
2021-03-06 15:03:23
阅读次数:
0
一、单源最短路径 1.朴素Dijkstra算法 #include <bits/stdc++.h> using namespace std; const int N = 1000; //数组g为邻接矩阵用于存放权值, 数组dis[i]表示起点到节点i的距离, n代表点的个数, m代表边的个数 int ...
分类:
其他好文 时间:
2021-03-01 13:48:57
阅读次数:
0
算法就是计算或者解决问题的步骤。可以想象成食谱,要做出特定的聊了,就需要遵循上面的食谱步骤。同样,如果想用计算机解决特定问题,就需要遵循算法。特定的问题很多,比如“将随意排列的数字按从小到大的排序重新排列”、“寻找出发点到目的地的最短路径”等等。 食谱和算法的最大区别就是算法是严密的。食谱上经常会出 ...
分类:
编程语言 时间:
2021-03-01 13:41:23
阅读次数:
0
##题意 第一行给出四个数,分别代表城市数量(0 ~ n-1)、道路数量m、起点s、终点t。 第二行给出n个数,代表第i个城市救援队的数量 接下去给出m行,每行给出三个数x、y、z,表示x->y 距离z,是双向路。 最后让我们输出s->t的最短路条数 和 能聚集到的救援队的最大数量。 ##思路 本题 ...
分类:
其他好文 时间:
2021-02-26 13:14:52
阅读次数:
0
Branch Assignment 大家应该都可以想到,一个点对另一个点传递信息的价值为它到总部的最短路加上总部到另一个点的最短路,在下文,我们设一个点到总部的最短路加上总部到它的最短路为$d_i$。 对于分到一个子集的点,若子集的大小为m,那么这个子集的总代价是: \((m-1)\sum_{i=1 ...
分类:
其他好文 时间:
2021-02-25 12:08:36
阅读次数:
0
P1772 [ZJOI2006]物流运输 看完这道题,很容易想到需要用最短路,但是只用最短路显然是不行的,因为运输路线不止一条, 所以如果每一天都选择最短的路线答案可能并不是最优,所以这时候就需要考虑DP, 刚开始我想的是用状态压缩把所有可能的路线算出来,但很快就被我否决了,因为时间复杂度显然超了, ...
分类:
其他好文 时间:
2021-02-20 11:55:07
阅读次数:
0
https://codeforces.com/contest/1473/problem/E vector存图: 1 #define bug(x) cout<<#x<<" is "<<x<<endl 2 #define IO std::ios::sync_with_stdio(0),cin.tie(0 ...
分类:
其他好文 时间:
2021-02-15 12:17:20
阅读次数:
0
https://www.acwing.com/problem/content/1139/ #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(false);cin.tie(0); cout.tie ...
分类:
其他好文 时间:
2021-02-15 11:53:52
阅读次数:
0
https://www.acwing.com/problem/content/1133/ #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(false);cin.tie(0); cout.tie ...
分类:
其他好文 时间:
2021-02-15 11:53:38
阅读次数:
0
https://www.acwing.com/problem/content/1136/ #include <bits/stdc++.h> using namespace std; #define IO ios::sync_with_stdio(false);cin.tie(0); cout.tie ...
分类:
其他好文 时间:
2021-02-15 11:53:26
阅读次数:
0