http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=198#problem/E

水题一道,题意就是让求一遍最小生成树与最大生成树,但我因为Each case contains a blank line and an integer n (1 ≤ n ≤ 100) denoting the number of houses.这句话错了三遍,有两种解决方案,一不用管空格,二gets(str);

#include <iostream>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#define N 1000001
int map[][],map1[][];
int v[],v1[];
int dis[],dis1[];
int n;
int Primmin()
{
int min,k,sum=;
memset(v,,sizeof(v));
v[]=;
for(int i=;i<=n;i++)
dis[i]=map[][i];
for(int i=;i<n;i++)
{
min=N;
for(int j=;j<=n;j++)
{
if(v[j]==&&min>dis[j])
{
min=dis[j];
k=j;
}
}
v[k]=;
sum=sum+min;
for(int j=;j<=n;j++)
{
if(v[j]==&&dis[j]>map[k][j])
{
dis[j]=map[k][j];
}
}
}
return sum;
}
int Primmax()
{
int min,k,sum=;
memset(v1,,sizeof(v1));
v1[]=;
for(int i=;i<=n;i++)
dis1[i]=map1[][i];
for(int i=;i<n;i++)
{
min=;
for(int j=;j<=n;j++)
{
if(v1[j]==&&min<dis1[j])
{
min=dis1[j];
k=j;
}
}
sum=sum+min;
v1[k]=;
for(int j=;j<=n;j++)
{
if(v1[j]==&&dis1[j]<map1[k][j])
{
dis1[j]=map1[k][j];
}
}
}
return sum;
}
int main()
{
int T,K=;
char ch[];
scanf("%d",&T);
while(T--)
{
K++;
gets(ch);
scanf("%d",&n);
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
{
map[i][j]=N;
map[j][i]=N;
}
map[i][i]=;
}
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
{
map1[i][j]=;
map1[j][i]=;
}
}
int xx,yy,zz;
while(scanf("%d%d%d",&xx,&yy,&zz)!=EOF)
{
if(xx==&&yy==&&zz==) break;
if(map[xx][yy]>zz)
{
map[xx][yy]=zz;
map[yy][xx]=zz;
}
if(map1[xx][yy]<zz)
{
map1[xx][yy]=zz;
map1[yy][xx]=zz;
}
}
int sum1=Primmin();
int sum2=Primmax();
long long int tt=sum1+sum2;
if(tt%==)
{
tt=tt/;
printf("Case %d: %lld\n",K,tt);
}
else printf("Case %d: %lld/2\n",K,tt);
}
return ;
}

最新文章

  1. http Content-type对照表
  2. 【git学习】sha1 deflate
  3. poj 3177 Redundant Paths
  4. Tickeys -- 找对打字的感觉 (机械键盘音效软件)
  5. 寒冰王座[HDU1248]
  6. SQL SERVER2005 的三种复制类型概述
  7. 学习shell之前你不得不了解的小知识
  8. 安装Genymotion android模拟器
  9. HDU 3452 Bonsai(网络流之最小割)
  10. Java基础知识强化之IO流笔记23:计算机是如何识别把两个字节拼接为中文(附加)
  11. CodeSmith使用总结--创建一个基础模板
  12. Jsunpack
  13. javascript正则表达式小数类型
  14. 编码格式简介:ASCII码、ANSI、GBK、GB2312、GB18030和Unicode、UTF-8,BOM头
  15. my dream
  16. Linux指令--diff
  17. (MariaDB)开窗函数用法
  18. Dynamics CRM2016 业务流程之Task Flow(一)
  19. shell脚本-工作练习篇
  20. learn python the hard way习题31~40总结以及列表的扩展知识

热门文章

  1. 关于android性能,内存优化
  2. Android JSON语法解析示例
  3. Linux命令 swap:内存交换空间
  4. LeetCode 81 Search in Rotated Sorted Array II(循环有序数组中的查找问题)
  5. 【CF802C】Heidi and Library (hard) 费用流
  6. IntelliJ IDEA导出Java 可执行Jar包
  7. 【C#】浏览器源代码
  8. mysql补充(3)优化sql语句查询常用的30种方法
  9. python实现简单购物车系统(练习)
  10. sublime text 3 常见问题总结 pyv8