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

题意:n个村庄字母标号,每个字母后跟m个字母,表示该字母到mi的距离。求构建所有村庄道路的最短距离。

题解:最小生成树裸题。注意输入。

代码:

 #include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
const int maxn = ;
const int inf = 0x3f3f3f3f;
int mp[maxn][maxn];
int dis[maxn];
bool vis[maxn];
int n;
int prim(){
memset(dis,0x3f,sizeof(dis));
memset(vis,,sizeof(vis));
int ans = ;
dis[] = ;
while(){
int k = ;
for(int j = ; j <= n;j++){
if(!vis[j] && dis[j] < dis[k])
k = j;
}
if(!k) break;
vis[k] = ;
ans += dis[k];
for(int j = ; j <= n;j++){
if(dis[j] > mp[k][j]){
dis[j] = mp[k][j];
} }
}
return ans;
}
int main(){
int m, w;
char ch1,ch2;
while(cin >> n && n){
memset(mp,0x3f,sizeof(mp));
for(int i = ; i < n; i++)
mp[i][i] = ;
for(int i = ; i < n; i++){
cin>>ch1>>m;
int s = ch1 - 'A' + ;
while(m--){
cin>>ch2>>w;
int t = ch2 - 'A' + ;
mp[s][t] = mp[t][s] = w;
}
}
cout<<prim()<<endl;
}
return ;
}

【POJ】1251 Jungle Roads的更多相关文章

  1. poj 1251 Jungle Roads (最小生成树)

    poj   1251  Jungle Roads  (最小生成树) Link: http://poj.org/problem?id=1251 Jungle Roads Time Limit: 1000 ...

  2. POJ 1251 Jungle Roads - C语言 - Kruskal算法

    Description The Head Elder of the tropical island of Lagrishan has a problem. A burst of foreign aid ...

  3. 【POJ】1704 Georgia and Bob(Staircase Nim)

    Description Georgia and Bob decide to play a self-invented game. They draw a row of grids on paper, ...

  4. 【POJ】1067 取石子游戏(博弈论)

    Description 有两堆石子,数量任意,可以不同.游戏开始由两个人轮流取石子.游戏规定,每次有两种不同的取法,一是可以在任意的一堆中取走任意多的石子:二是可以在两堆中同时取走相同数量的石子.最后 ...

  5. POJ 1251 Jungle Roads (prim)

    D - Jungle Roads Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Su ...

  6. POJ 1251 Jungle Roads(最小生成树)

    题意  有n个村子  输入n  然后n-1行先输入村子的序号和与该村子相连的村子数t  后面依次输入t组s和tt s为村子序号 tt为与当前村子的距离  求链接全部村子的最短路径 还是裸的最小生成树咯 ...

  7. 【Kruscal最小生成树】D. Jungle Roads

    https://www.bnuoj.com/v3/contest_show.php?cid=9154#problem/D [Accepted] #include<iostream> #in ...

  8. 【BZOJ】【1986】【USACO 2004 Dec】/【POJ】【2373】划区灌溉

    DP/单调队列优化 首先不考虑奶牛的喜欢区间,dp方程当然是比较显然的:$ f[i]=min(f[k])+1,i-2*b \leq k \leq i-2*a $  当然这里的$i$和$k$都是偶数啦~ ...

  9. 【POJ】【2104】区间第K大

    可持久化线段树 可持久化线段树是一种神奇的数据结构,它跟我们原来常用的线段树不同,它每次更新是不更改原来数据的,而是新开节点,维护它的历史版本,实现“可持久化”.(当然视情况也会有需要修改的时候) 可 ...

随机推荐

  1. js滚动页面到固定位置进行操作

    $(window).scroll(function () { var scrollTop = $(this).scrollTop(); var scrollHeight = $("#div& ...

  2. RF中alert的处理

    那么在robotframework中如何处理呢? 我在测试过程中遇到了这么一个窗口: 这种应该是属于Confirm 类型,是无法定位到的,在robotframework中需要这样处理: 1.虽然无法定 ...

  3. JAVA学习之数组

    一.数组定义同一种类型数据的集合,其实数组就是一个容器数组定义格式:1.数据类型[] 变量名 = new 数据类型[数组长度] int[] arr = new int[5]; 2.数据类型[] 数组名 ...

  4. 4.1 react 代码规范

    关于 基础规范 组件结构 命名规范 jsx 书写规范 eslint-plugin-react 关于 在代码的设计上,每个团队可能都有一定的代码规范和模式,好的代码规范能够提高代码的可读性便于协作沟通, ...

  5. 第48章 MDK的编译过程及文件类型全解

    Frm: http://www.cnblogs.com/firege/p/5806134.html 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教 ...

  6. PAT_A1130#Infix Expression

    Source: PAT A1130 Infix Expression (25 分) Description: Given a syntax tree (binary), you are suppose ...

  7. 前端(七)—— 盒模型之display、overflow、隐藏、border、margin、样式支持,层级结构

    display.overflow.隐藏.border.margin.样式支持,层级结构 一.盒模型之display 1.三种样式 block 块 inline 内联/行内 inline-block 内 ...

  8. 2018-2-13-win10-uwp-音频

    title author date CreateTime categories win10 uwp 音频 lindexi 2018-2-13 17:23:3 +0800 2018-2-13 17:23 ...

  9. 从数据库更新模型报错:无法将运行时连接字符串转换为设计时等效项,没有为提供程序“mysql.data.mysqlclient”安装为设计目的启用visual studio以便与数据库进行通信所需要的库

    评论里有同学说:VS2017 Enterprise版本的无效,我现在也是用的vs2017Enterprise版本,数据库也是mysql的,但没遇到过.在此说明一下. 一.环境:VS2015 + EF ...

  10. linux fcntl 对文件描述符控制

    linux fcntl 对文件描述符控制 linux fcntl 对文件描述符控制 linux fcntl 对文件描述符控制