题目链接:http://poj.org/problem?id=1789

还是套路。

#include <stdio.h>
#include <string.h> #define INF 0x3f3f3f3f int maps[][];
char str[][];
int dis[];
bool vis[];
int n; int Prim()
{
memset(vis,false,sizeof(vis));
for(int i=; i<=n; i++)
dis[i] = INF;
int ans=;
dis[] = ;
for(int i=; i<=n; i++)
{
int tmp = INF,k=;
for(int j=; j<=n; j++)
{
if(!vis[j]&&dis[j]<tmp)
{
tmp = dis[j];
k=j;
}
} vis[k] = true;
ans+=tmp;
for(int i=; i<=n; i++)
{
if(!vis[i]&&dis[i]>maps[k][i])
dis[i] = maps[k][i];
}
}
return ans;
} int main()
{
while(scanf("%d",&n),n)
{
for(int i=;i<n;i++)
scanf("%s",str[i]); for(int i=;i<n;i++)
{
for(int j=;j<n;j++)
{
int dist = ;
for(int k=;k<;k++)
{
if(str[i][k]!=str[j][k])
dist++;
}
maps[i+][j+] = dist;
}
}
printf("The highest possible quality is 1/%d.\n",Prim());
}
return ;
}

Poj(1789),最小生成树,Prim的更多相关文章

  1. POJ 3625 最小生成树 Prim C++

    Building Roads Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 11861   Accepted: 3376 D ...

  2. POJ 1789 -- Truck History(Prim)

     POJ 1789 -- Truck History Prim求分母的最小.即求最小生成树 #include<iostream> #include<cstring> #incl ...

  3. Kuskal/Prim POJ 1789 Truck History

    题目传送门 题意:给出n个长度为7的字符串,一个字符串到另一个的距离为不同的字符数,问所有连通的最小代价是多少 分析:Kuskal/Prim: 先用并查集做,简单好写,然而效率并不高,稠密图应该用Pr ...

  4. poj 1789 prime

    链接:Truck History - POJ 1789 - Virtual Judge  https://vjudge.net/problem/POJ-1789 题意:先给出一个n,代表接下来字符串的 ...

  5. POJ 1789 Truck History (Kruskal)

    题目链接:POJ 1789 Description Advanced Cargo Movement, Ltd. uses trucks of different types. Some trucks ...

  6. 数据结构代码整理(线性表,栈,队列,串,二叉树,图的建立和遍历stl,最小生成树prim算法)。。持续更新中。。。

    //归并排序递归方法实现 #include <iostream> #include <cstdio> using namespace std; #define maxn 100 ...

  7. 邻接矩阵c源码(构造邻接矩阵,深度优先遍历,广度优先遍历,最小生成树prim,kruskal算法)

    matrix.c #include <stdio.h> #include <stdlib.h> #include <stdbool.h> #include < ...

  8. 最小生成树Prim算法(邻接矩阵和邻接表)

    最小生成树,普利姆算法. 简述算法: 先初始化一棵只有一个顶点的树,以这一顶点开始,找到它的最小权值,将这条边上的令一个顶点添加到树中 再从这棵树中的所有顶点中找到一个最小权值(而且权值的另一顶点不属 ...

  9. 转载:最小生成树-Prim算法和Kruskal算法

    本文摘自:http://www.cnblogs.com/biyeymyhjob/archive/2012/07/30/2615542.html 最小生成树-Prim算法和Kruskal算法 Prim算 ...

  10. 最小生成树Prim

    首先解释什么是最小生成树,最小生成树是指在一张图中找出一棵树,任意两点的距离已经是最短的了. 算法要点: 1.用book数组存放访问过的节点. 2.用dis数组保存对应下标的点到树的最近距离,这里要注 ...

随机推荐

  1. C++文件读写函数之——fopen、fread和fwrite、fgetc和fputc、fgets和fputs、ftellf和fseek、rewind

    由于最近经常使用到c语言中的读写文件,所以在此总结以下,方便以后查找. 在c中,文件操作都是由库函数来实现的,主要是分为读和写两种操作,以下详细讲解以下所有有关文件操作的邯郸乎的用法: //C++写入 ...

  2. spring boot——关于一个Mysql主键的问题

    问题是这样的: 我现在有一个被@Entity标记的类TimeLine,其中id为主键. TimeLineController中有一个接收post请求的add()方法,这个方法会接受客户端传来的一个表单 ...

  3. beeline hiveserver2 start

    1. install hive 2. start hiveserver2 查看hiverserver2 是否正常运行: ps -ef | grep hive 2. start beeline 3. 链 ...

  4. Nginx的验证、启动、停止、重启

    验证 验证nginx配置文件是否正确,进入sbin目录,输入以下命令: ./nginx -t  启动 进入sbin目录,输入以下命令: ./nginx -c /home/mppay/nginx/con ...

  5. RTT学习之BSP

    ---恢复内容开始--- 一 根据相近型号的demo BSP进行修改制作自己的BSP https://github.com/RT-Thread/rt-thread/blob/master/bsp/st ...

  6. LeetCode 881.救生艇(C++)

    第 i 个人的体重为 people[i],每艘船可以承载的最大重量为 limit. 每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limit. 返回载到每一个人所需的最小船数.(保证每个人都 ...

  7. Spring-cloud学习线路

    学习本学习路线学习完,大家将会对微服务.Spring Cloud.Docker.Kubernetes有一个系统.全面的认识.通过学习,将能掌握相关的知识体系,并能够投入到项目实战中去. 本学习路线采用 ...

  8. 资源管理与调度系统-YARN的基本架构与原理

    资源管理与调度系统-YARN的基本架构与原理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 为了能够对集群中的资源进行统一管理和调度,Hadoop2.0引入了数据操作系统YARN. ...

  9. 学习Geodatabase的总结

    一.怎样择取自己需要的.有用的资料 1.开始找资料时,首先想到的是ESRI的帮助文档,因为它直接.规范而系统.通读一遍之后,大致了解了Geodatabase的各个方面.再从帮助文档体系结构中选出重要的 ...

  10. 运行python文件报SyntaxError:Non-ASCII character '\xe7'

    以下是报错内容: 在文件页头加上: #coding=uft-8 ~解决了~ 记录一下(捂脸)