基础prim
#include<iostream>
using namespace std;
char a[2000][25];
int n,m;
char ta[25],tb[25];
double map[1509][1509];
bool vis[2000];
double dis[2000];
double prim()
{
double sum;
for(int i=1;i<=n;i++)
{
double cf=9999999.0;//特别注意啊!!这个我已开始就用0x7FFFFFFF了,就是wa,拉无语了,最后改成小数就过了!!!
int temp;
for(int j=1;j<=n;j++)
{
if(!vis[j]&&dis[j]<cf)
{
cf=dis[j];
temp=j;
}
}
if(cf==9999999.0)
cf=0;
sum+=cf;
vis[temp]=true;
for(int j=1;j<=n;j++)
{
if(!vis[j]&&dis[j]>map[temp][j])
dis[j]=map[temp][j];
}
}
return sum;
}
int main()
{
// cout<<"haha\n";
// system("pause");
double l,tc;
while(scanf("%lf",&l)!=EOF)
{
memset(vis,false,sizeof(vis));
memset(map,9999999.0,sizeof(map));
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%s",a[i]);
}
scanf("%d",&m);
while(m--)
{
scanf("%s%s%lf",ta,tb,&tc);
int tempa,tempb;
for(int i=1;i<=n;i++)
{
if(strcmp(ta,a[i])==0)
tempa=i;
if(strcmp(tb,a[i])==0)
tempb=i;
}
map[tempa][tempb]=map[tempb][tempa]=tc;
}
for(int i=1;i<=n;i++)
dis[i]=map[1][i];
vis[1]=true;
double t=prim();
if(t<=l)
printf("Need %.1lf miles of cable\n",t);
else
printf("Not enough cable\n");
}
return 0;
}

poj 2705 Tangled in Cables 基础prim相关推荐

  1. 【最小生成树专题】POJ 2075 Tangled in Cables

    POJ 2075 Tangled in Cables 题目链接->http://poj.org/problem?id=2075 Time Limit: 1000MS   Memory Limit ...

  2. POJ 2075 Tangled in Cables

    也比较水:Hash+最小生成树,我用的是Prim:好的是我有复习了一下Hash View Code #include <stdio.h>#include <string.h># ...

  3. POJ 2075 Tangled in Cables (c++/java)

    http://poj.org/problem?id=2075 题目大意: 给你一些人名,然后给你n条连接这些人名所拥有的房子的路,求用最小的代价求连接这些房子的花费是否满足要求. 思路: 昨天20分钟 ...

  4. 百练/ 北京大学2016研究生推免上机考试(校外)G: Tangled in Cables(最小支撑树)

    题目来源:http://bailian.openjudge.cn/practice/2075/ 2075:Tangled in Cables 总时间限制:1000ms  内存限制: 65536kB 描 ...

  5. 百练2075:Tangled in Cables题解

    2075:Tangled in Cables 查看 提交 统计 提示 提问 总时间限制:  1000ms  内存限制:  65536kB 描述 You are the owner of SmallCa ...

  6. poj 3026 BorgMaze 最小生成树Kruskal、Prim(Prim VS报错待解决

    题意 以及 思路: 从S点有一伙人出发去消灭A点的敌人,在S点或者A点可以分裂成几个小队然后分别走,这样路径=总队路径+各个小队路径 问你怎样路径最短. 在一个y行 x列的迷宫中,有可行走的通路空格' ...

  7. poj 1789 TruckHistory 最小生成树 Kruskal、Prim

    题意: n个车牌号,刚开始只有一个车牌,其他车牌都是由一个车牌直接或间接产生,一个车牌到另一个车牌的产生权值是它们之间的数字不同的个数,问产生的最小的边权和,即求最小生成树. Input: 多组数据. ...

  8. HDU 1863 (图论基础prim算法)

    问题描述: 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公 ...

  9. POJ 2976 01分数规划基础题目

    题意:       给你一组"数",一共n个,每个数有两个权值,价钱a[i],代价b[i],让你选择n - k使得 sigma(a[i]) / sigma(b[i]) * 100 ...

  10. POJ 图论分类 + DP(较全 自己又加了点)

    DP -----------动态规划 状态压缩DP 2411 (棋盘规模较大)状态压缩DP+DFS+滚动数组 2664 (棋盘规模较小)直接递推即可(DP) 2506 (棋盘规模较小)直接递推即可(D ...

最新文章

  1. python第五单元答案_中国大学MOOC第五单元测试答案_数据结构与算法Python版慕课答案在哪里可以看...
  2. 数据中心太废电?为省电费阿里和微软是这么做的....
  3. 2020-10-30(APK-逆向2)
  4. 详解3D物体检测模型: Voxel Transformer for 3D Object Detection
  5. SpringMVC接收哪些类型参数参数
  6. 2019春季发布会后苹果股价一度跌逾2% 盘后微涨0.22%
  7. 机器学习与计算机视觉(计算机视觉的嵌入式平台)
  8. 怪物之心无法触发_《勇者斗恶龙 怪兽篇:旅团之心》怪物生方法及生规则研究 - 电玩巴士...
  9. eclipse 安装 阿里代码规范检测插件
  10. 计算机报名照片 1寸,国考录用系统2021国家公务员考试报名照片尺寸是1寸还是2寸?...
  11. 多网卡时如何使用源地址ping目的地址,检测网络连通性。
  12. 关于导入百度导航SDK报错以及解决方案
  13. 测试-- 自动化测试selenium(关于API)
  14. LANDESK8.8版本操作说明书
  15. 单卡3090可得专属ChatGPT:使用LoRA+ChatGLM
  16. SATA系列专题之五:Link Power Management解析
  17. 2007年9月19日
  18. python在园林中的应用_浅析亭在园林中的应用
  19. CornerStone —— 医学影像显示的JavaScript库简介
  20. 我的世界服务器进入显示器,关于minecraft:使用屏幕的系统服务:“未找到屏幕会话”...

热门文章

  1. Oracle ORA-01555(快照过旧)
  2. php 数组任意位置插入值
  3. 修改tomcat的部署名称
  4. linux一些基本知识
  5. python--过滤top命令--之--时间_系统CPU_进程CPU_内存
  6. 解决滑动UITableView自动显示delete按钮
  7. 自然数之和(leetcode 167)
  8. http请求被挂起 cancled 原因
  9. debian 配置linuxptp 软件时间戳
  10. Magic Squares