题目1545:奇怪的连通图
时间限制:1 秒
内存限制:128 兆
特殊判题:否
提交:164
解决:44
题目描述:
已知一个无向带权图,求最小整数k。使仅使用权值小于等于k的边,节点1可以与节点n连通。
输入:
输入包含多组测试用例,每组测试用例的开头为一个整数n(1 <= n <= 10000),m(1 <= m <= 100000),代表该带权图的顶点个数,和边的个数。
接下去m行,描述图上边的信息,包括三个整数,a(1 <= a <= n),b(1 <= b <= n),c(1 <= c <= 1000000),表示连接顶点a和顶点b的无向边,其权值为c。
输出:
输出为一个整数k,若找不到一个整数满足条件,则输出-1。
样例输入:
3 3
1 3 5
1 2 3
2 3 2
3 2
1 2 3
2 3 5
3 1
1 2 3
样例输出:
3
5
-1
比赛的时候没想出来。
很笨地用DFS递归枚举。。
然后果断超时。。
一个数据都没过。。
然后第二天早上起来果断用BFS写了一下。。
wa~~
有点小激动,因为没有超时。
然后将队列改为优先队列果断A了
yes!!
#include<cstdio>
#include<cstring>
#include<vector>
#include<queue>
using namespace std;
struct node
{
int ne;
int va;
};
struct node1
{
int next;
int m;
bool operator < (const node1& a) const
{
return m>a.m;
}
};
vector<node> map[10002];
int visit[10002];
int n,t,in;
int mmin(int aa,int bb)
{
return aa<bb?aa:bb;
}
int max(int aa,int bb)
{
return aa>bb?aa:bb;
}
int BFS()
{
int xiao = 1000008;
priority_queue<node1> qu;
struct node1 needru,needpush,var;
needru.next = 1;
needru.m = 0;
qu.push(needru);
visit[1] = 1;
while(!qu.empty())
{
needpush = qu.top();
qu.pop();
if(needpush.next==n)
xiao = mmin(xiao,needpush.m);
int len = map[needpush.next].size();
visit[needpush.next] = 1;
for(int i=0;i<len;i++)
{
if(!visit[map[needpush.next][i].ne])
{
var.next = map[needpush.next][i].ne;
var.m = max(map[needpush.next][i].va,needpush.m);
qu.push(var);
}
}
}
return xiao;
}
int main()
{
int i,j,a,b;
struct node qq;
while(scanf("%d%d",&n,&t)!=EOF)
{
in = 1000008;
memset(visit,0,sizeof(visit));
for(i=0;i<t;i++)
{
scanf("%d%d%d",&a,&b,&j);
qq.ne = b;
qq.va = j;
map[a].push_back(qq);
qq.ne = a;
map[b].push_back(qq);
}
visit[1] = 1;
in = BFS();
if(in!=1000008)
printf("%d\n",in);
else
printf("-1\n");
for(i=0;i<=n;i++)
map[i].clear();
}
return 0;
}
分享到:
相关推荐
这是九度OJ-题目1509:树中两个结点的最低公共祖先的测试数据,input.txt是输入数据,output.txt是输出数据。
九度OJ八皇后问题,主要是主对角线和副对角线的判断上面优化。在九度1140上面已经AC
使用vs2010编写,直接用vs2010打开加压后的.sln文件即可看到...九度OJ上面的剑指Offer习题全套答案,全部AC,且具有较好的时间复杂度。部分参考网络上的idea,但代码已经尽量要求简洁,是OJ练习不可多得的参考代码。
九度oj 题目1369:字符串的排列 剑指offer里面的题目 自己写的代码,供参考!
计算机机试指南九度OJ机试题目解析复试机试参考,适用于计算机考研的同学,文档整理汇总了各个分类,方便入门和刷题参考。
九度OJ为本系统改造的典型案例。 文档、社区服务见项目首页,http://code.google.com/p/hustoj/ 安装应用 下载应用安装包 应用首页 HUSTOJ特性 开源 全部采用开源技术,不仅仅是提供源代码,搭建HUSTOJ?不需要...
九度智能seo优化软件是一款针对搜索引擎的点击类软件。软件适用于百度、谷歌、360搜索、搜狗、搜搜、淘宝、天猫等等搜索引擎,可以用来提高...绝对是专业人士必备的seo优化软件,您值得拥有! 九度智能seo优化软件截图
完整可以用在二次开发,节约时间成本,
由于九度搜索点击软件完全模仿人的自然行为进行点击,所以软件工作时,占用一台电脑,在挂机的同时,不能干其他的事情。建议在闲暇时挂机,或有多余的电脑挂机,也可以在自己的电脑上,安装虚拟机,在虚拟机上运行...
N皇后问题及其优化,主要是对角线和副对角线的判断上面的优化。输入要求的皇后数目n,输出有多少种排列的数目。 九度OJ1254已经AC
JobduOJ-InterviewQuestions九度OJ-剑指Offer解题代码这是九度OJ剑指Offer系列的解题代码,一共有51道题。
由于九度搜索点击软件完全模仿人的自然行为进行点击,所以软件工作时,占用一台电脑,在挂机的同时,不能干其他的事情。建议在闲暇时挂机,或有多余的电脑挂机,也可以在自己的电脑上,安装虚拟机,在虚拟机上运行...
这个一份完全的05-12年的浙江大学计算机考研机试真题和源代码,全部通过九度OJ、杭电OJ、天勤OJ等的测试。
九度 ACM 很好的九度 ACM解题报告 不错 大家可以下下来看看 九度内推
资源分享者,资源爱好者,我是浪杉,点我资料关注,每日不定时分享全网优质源码!
九度OJ部分题目解题代码,可以供考研学生参考
ZJU考研机试真题 九度1006ZOJ问题
王道关于考研机试的指导书,原来可以配合练习的九度oj已关闭,但这本书依然可以给准备机试的道友们很大帮助
九度智能SEO优化软件是九度搜索引擎点击优化软件重新开发版,本是针对搜索引擎的SEO优化类软件,2016年10月正式上线。软件可像真人点击一样,自动点击百度、谷歌、360搜索、搜狗、搜搜、淘宝、天猫等搜索引擎内的...
九度求职经验系列之“实习生”篇.pdf 讲述了九度求职经验相关内容