- 博客(12)
- 收藏
- 关注
原创 pta 畅通工程之局部最小花费问题
最小生成树,边权表示修路钱,修好的路不用花钱设为0 #include<iostream> #include<cstring> using namespace std; const int N = 110; int g[N][N]; int dist[N]; bool st[N]; int n; int prime() { memset(dist,0x3f,sizeof dist); int res= 0; for(int i = 0 ;i < n ; i
2022-04-21 09:57:10
446
原创 文件传输(并查集,pta)
7-32 文件传输 (25 分) 当两台计算机双向连通的时候,文件是可以在两台机器间传输的。给定一套计算机网络,请你判断任意两台指定的计算机之间能否传输文件? 输入格式: 首先在第一行给出网络中计算机的总数 N (2≤N≤10 4 ),于是我们假设这些计算机从 1 到 N 编号。随后每行输入按以下格式给出: I c1 c2 其中I表示在计算机c1和c2之间加入连线,使它们连通;或者是 C c1 c2 其中C表示查询计算机c1和c2之间能否传输文件;又或者是 S 这里S表示输入终止。 输
2022-04-14 17:38:37
319
原创 列出连通集
给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。 输入格式: 输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。 输出格式: 按照"{v1v2...vk}"的格式,每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。 输入样例: 8 6 0 7 0 1 2...
2022-04-14 17:36:31
183
原创 树的直径算法(dfs)
1.什么是树的直径? 树的直径是一颗树中任意两点最长的距离 2.如何求树的直径? (1).任意找一点x,并求得树上任意一点到x的距离存到数组dist中 (2).找到距离x最长的点y并以点y为起点找到树中距离y最远的点z,则z-y长度就是树的直径 3.证明y一定是某一直径的端点 acwing1207 #include <cstdio> #include <cstring> #include <iostream> #include <algorith
2022-03-03 22:01:59
1683
6
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅