POJ 1734
#include<iostream>
#include<stdio.h>
#define MAXN 105
#define inf 123456789
using namespace std; int _m[MAXN][MAXN];
int floy[MAXN][MAXN];
int pre[MAXN][MAXN];
int ans[MAXN];
int n;
int num;
void floyd();
int main()
{
//freopen("acm.acm","r",stdin);
int m;
int u;
int v;
int i;
int j;
int len;
memset(_m,,sizeof(_m));
memset(pre,-,sizeof(pre));
cin>>n>>m;
for(i = ; i < n; ++ i)
{
for(j = ; j <n; ++ j)
{
floy[i][j] = inf;
floy[j][i] = inf;
}
floy[i][i] = ;
} for(i = ; i < m; ++ i)
{
cin>>u>>v>>len;
-- u;
-- v;
if(floy[u][v] > len)
{
_m[u][v] = _m[v][u] = len;
floy[u][v] = floy[v][u] = len;
pre[u][v] = v;
pre[v][u] = u;
} }
floyd();
if(num == )
{
cout<<"No solution."<<endl;
}
else
{
for(i = ; i < num; ++ i)
{
cout<<ans[i]+<<" ";
}
cout<<endl;
}
} void floyd()
{
int k;
int i;
int j;
int min = inf;
int temp;
num = ;
for(k = ; k < n; ++ k)
{
for(i = ; i < k; ++ i)
{
for(j = ; j < k; ++ j)
{
if(_m[i][k] && _m[k][j] && i != j)
{
if(_m[i][k] + _m[k][j] + floy[i][j] < min)
{
min = _m[i][k] + _m[k][j] + floy[i][j];
ans[] = k;
num = ;
int p = i;
while(p != -)
{
ans[num ++] = p;
p = pre[p][j];
// cout<<"00000000000"<<endl;
// cout<<p<<endl;
}
// return ;
}
}
}
} for(i = ; i < n; ++ i)
{
for(j = ; j < n; ++ j)
{
if(floy[i][k] + floy[k][j] < floy[i][j])
{
floy[i][j] = floy[i][k] + floy[k][j];
pre[i][j] = pre[i][k];
}
}
}
} }
关注我的公众号,当然,如果你对Java, Scala, Python等技术经验,以及编程日记,感兴趣的话。

技术网站地址: vmfor.com
POJ 1734的更多相关文章
- Sightseeing trip POJ - 1734 -Floyd 最小环
POJ - 1734 思路 : Floyd 实质 dp ,优化掉了第三维. dp [ i ] [ j ] [ k ] 指的是前k个点优化后 i -> j 的最短路. 所以我们就可以 ...
- POJ 1734 Sightseeing trip(无向图最小环+输出路径)
题目链接 #include <cstdio> #include <string> #include <cstring> #include <queue> ...
- POJ 1734.Sightseeing trip (Floyd 最小环)
Floyd 最小环模板题 code /* floyd最小环,记录路径,时间复杂度O(n^3) 不能处理负环 */ #include <iostream> #include <cstr ...
- POJ 1734 Sightseeing trip
题目大意: 求一个最小环. 用Floyd 求最小环算法. #include <iostream> #include <cstdlib> #include <cstdio& ...
- poj 1734 Sightseeing trip_ 最小环记录路径
题意:求最出小环,输出路径 #include <iostream> #include<cstdio> using namespace std; #define N 110 #d ...
- POJ 1734 求最小环路径 拓展Floyd
九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11888019 题意: n个点 m条无向边 下面m条有权无向边 问图中最小环的路径 ...
- poj 1734 Sightseeing trip判断最短长度的环
Sightseeing trip Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5590 Accepted: 2151 ...
- 【POJ 1734】 Sightseeing Trip
[题目链接] 点击打开链接 [算法] floyd求最小环 输出路径的方法如下,对于i到j的最短路,我们记pre[i][j]表示j的上一步 在进行松弛操作的时候更新pre即可 [代码] #include ...
- poj 1734 floyd求最小环,可得到环上的每个点
#include<stdio.h> #include<string.h> #define inf 100000000 #define N 110 #define min(a, ...
随机推荐
- 2_1我的第一个应用hello world[wp8特色开发与编程技巧]
2_1hello world -5min 大家好,我是徐文康,在上一个视频当中我们已经讲了,如何根据自己电脑系统去下载相应的SDK. 你可能花了很多时间去安装以及配置好了这个开发环境,如果还没有配置好 ...
- mysql快速上手2
上一篇文章讲的是mysql的基本操作,这一篇会有一点难以理解,本节主要内容mysql视图,存储过程,函数,事务,触发器,以及动态执行sql 视图view 视图是一个虚拟表,其内容由查询定义.同真实的表 ...
- 我开发了一个产品--Markdown Notes
大家好,我开发了一个工具类软件产品--Markdown Notes,中文名是Markdown笔记.想写一篇有关它的文章,目的就是为了推广.推广.推广:) BTW:本文就是用这个工具所写的.
- oracle 文件导出
$ cat me.sqlset echo offset term offset line 1000 pages 0set feedback offset heading offset trimspoo ...
- [大牛翻译系列]Hadoop(19)MapReduce 文件处理:基于压缩的高效存储(二)
5.2 基于压缩的高效存储(续) (仅包括技术27) 技术27 在MapReduce,Hive和Pig中使用可分块的LZOP 如果一个文本文件即使经过压缩后仍然比HDFS的块的大小要大,就需要考虑选择 ...
- 分享:mysql 随机查询数据
在mysql中查询5条不重复的数据,使用以下: 1 SELECT * FROM `table` ORDER BY RAND() LIMIT 5 就可以了.但是真正测试一下才发现这样效率非常低.一个1 ...
- TDirectory.CreateDirectory 完整、严谨的创建一个目录
描述:创建一个目录,不包含多级目录(多级目录使用System.SysUtils.ForceDirectories,Vcl.FileCtrl.ForceDirectories已过时) procedure ...
- Win10环境下的Scrapy结合Tor进行匿名爬取
本文内容来源:http://blog.privatenode.in/torifying-scrapy-project-on-ubuntu/ 在使用Scrapy的时候,一旦进行高频率的爬取就容易被封IP ...
- C#学习笔记一
c#学习笔记一 c#学习笔记一 1 1. 注释 3 1.1. ///是文档注释,用于类和方法的说明 3 1.2. #region #endregion可以折叠代码 ...
- Java 网络编程(转)
一,网络编程中两个主要的问题 一个是如何准确的定位网络上一台或多台主机,另一个就是找到主机后如何可靠高效的进行数据传输. 在TCP/IP协议中IP层主要负责网络主机的定位,数据传输的路由,由IP地址可 ...