摘要:
题意 : 说实话,题意我没看懂,后来让人给我讲的样例。。。。。 4aaaaaaabaaaaaaabaaaaaaabaaaa0这个样例的话,就是输入n下面n行,每行7个字母,让你依次选两行进行比较,不同的有多少个,所以题目中给的样例,1,2行一个不同的,1,3行一个不同的,1,4行一个不同的,所以距离是3,2,3行两个不同的,2,1行一个不同的,2,4行两个不同的,距离是4,这样找下去,可以构成一个无向图,找最小生成树。解题思路 : 其实就是一个转化问题,将给的字符串转化成距离的二维数组再找最小生成树即可 1 #include 2 #include 3 #include 4 #include 5 阅读全文
摘要:
最小生成树的算法有两种,一种是prim,另一种是kruskal。prim模板: 1 int prim() 2 { 3 //low数组用来保存非生成树中各顶点与生成树中顶点最短边的权值;dis数组则是你输入的数组矩阵 4 int ans = 0, i, j, flag, min; 5 ... 阅读全文
摘要:
http://poj.org/problem?id=1258题意 : john当上了镇长,打算给每个农场都连接网络,需要用最小的成本连接其他所有农场,所以要找最少的纤维连在一起,任何两个农场之间的距离不超过十万。输入n,下面有n行n列,代表着每两个农场的距离,对角线为0,因为自己到自己是为0;解题思路 : 这个题要包含所有的农场,赤果果的最小生成树,这个题的话,注意是多组输入还有数组不要开得太小,算法的话prim和kruskal都可以,我用的是prim。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 i 阅读全文