hdu 1301 prime Jungle Roads
来源:互联网 发布:淘宝分销软件 编辑:程序博客网 时间:2024/05/16 10:01
题目 http://acm.hdu.edu.cn/showproblem.php?pid=1301
我在这个题目中犯了二个错误哦,很纠结这个题目有不难 下次一定注意 第一个错误是输入有错误 搞的我一直错了,
第二个是 A 到B跟B到A点距离是相同的。
下面看具体ac代码
#include<iostream>#include<cstring>#include<cstdio>#include<iomanip>using namespace std;#define inf 999999int map[101][101]; ///图bool mark[101];int dis[101];int n;void prime(){ memset(mark,false,sizeof(mark)); ///标记 memset(dis,0,sizeof(dis)); ///距离 int sum,k,i,j,min; sum=0; for(i=1;i<=n;i++) { dis[i]=map[1][i]; } dis[1]=0; mark[1]=true; for(i=2;i<=n;i++) { min=inf; k=0; for(j=1;j<=n;j++) ///找出最短的距离 { if(!mark[j]&&min>dis[j]) { min=dis[j]; k=j; } } sum+=min; mark[k]=true; ///标记 for(j=1;j<=n;j++) ///更新 { if(map[k][j]&&!mark[j]&&dis[j]>map[k][j]) { dis[j]=map[k][j]; } } } cout<<sum<<endl;}int main(){ int i,j,k,t,m1,m2; char a,b; while(scanf("%d",&n)!=EOF,n) { memset(map,inf,sizeof(map)); ///初始化 for(i=1;i<n;i++) { cin>>a>>k; ///k代表这个点跟几个点相连哦 for(j=0;j<k;j++) { cin>>b>>t; m1=a-'A'+1; ///注意我是从1开始的所以要加1 。。 m2=b-'A'+1; /// cout<<"m1 "<<m1<<" m2 "<<m2<<endl; map[m2][m1]=map[m1][m2]=t; ///这里一定要注意哦。。。 } } prime(); } return 0;}
- hdu 1301 prime Jungle Roads
- hdu 1301 Jungle Roads<java><prime>
- HDU 1301-Jungle Roads prime算法的典型应用
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- Hdu 1301 - Jungle Roads
- HDU 1301 Jungle Roads
- HDU 1301 Jungle Roads
- HDU 1301 Jungle Roads
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- HDU 1301 Jungle Roads
- HDU 1301 Jungle Roads
- hdu 1301 Jungle Roads
- hdu 1301 Jungle Roads
- C++中虚函数工作原理和(虚)继承类的内存占用大小计算
- 反射总结
- linux下安装mysql
- 坐标下载gRaphael——JavaScript 矢量图表库:两行代码实现精美图表
- hdu 1087 解题报告 Super Jumping! Jumping! Jumping!
- hdu 1301 prime Jungle Roads
- QT程序安装包制作 在Windows下发布程序的方法
- 推荐几个机器学习算法及应用领域相关的中国大牛
- onclick="this.src=this.src+'?'"
- error LNK2001: 无法解析的外部符号
- javascript 中判断的精简写法
- java GC
- 数位dp + dfs + 逆元求余 CF 258 B. Little Elephant and Elections
- AXD Jlink仿真注意的错误