【POJ 1125】Stockbroker Grapevine
id=1125">【POJ 1125】Stockbroker Grapevine
最短路 只是这题数据非常水。
。
主要想大牛们试试南阳OJ同题 链接例如以下:
http://acm.nyist.net/JudgeOnline/talking.php?pid=426&page=2
数据增大非常多 用到非常多东西才干过 (弱没过,。。
这题就是求最短路寻找全部通路中最大权的最小值外加考验英语水平……
Floyd 208K 0MS 1162B
#include
using namespace std;
int dis[111][111],n;
void Floyd()
{
int i,j,k,tmax,mmax,f;
for(k = 1; k <= n; ++k)
for(i = 1; i <= n; ++i)
for(j = 1; j <= n; ++j)
if(dis[i][j] > dis[i][k] + dis[k][j])
dis[i][j] = dis[i][k] + dis[k][j];
mmax = INF;
for(i = 1; i <= n; ++i)
{
f = 1;
tmax = 0;
for(j = 1; j <= n; ++j)
{
if(i == j) continue;
if(dis[i][j] == INF) f = 0;
tmax = max(tmax,dis[i][j]);
}
if(f && tmax < mmax)
{
k = i;
mmax = tmax;
}
}
if(mmax != INF) printf("%d %d\n",k,mmax);
else puts("disjoint");
}
int main()
{
int i,k,v;
while(~scanf("%d",&n) && n)
{
memset(dis,INF,sizeof(dis));
for(i = 1; i <= n; ++i)
{
scanf("%d",&k);
while(k--)
{
scanf("%d",&v);
scanf("%d",&dis[i][v]);
}
}
Floyd();
}
return 0;
}
Dijkstra 168K 0MS 1491B
#include
using namespace std;
typedef struct Edge
{
int v,w,next;
}Edge;
Edge eg[11111];
int head[111],dis[111],n,tp;
bool vis[111];
int Dijkstra(int u)
{
memset(dis,INF,sizeof(dis));
memset(vis,0,sizeof(vis));
dis[u] = 0;
int m,p,i,j;
for(i = 1; i <= n; ++i)
{
p = -1;
m = INF;
for(j = 1; j <= n; ++j)
{
if(!vis[j] && dis[j] < m)
{
p = j;
m = dis[j];
}
}
if(i == n || p == -1) break;
vis[p] = 1;
for(j = head[p]; j != -1; j = eg[j].next)
{
if(!vis[eg[j].v] && dis[eg[j].v] > dis[p] + eg[j].w)
dis[eg[j].v] = dis[p] + eg[j].w;
}
}
if(p == -1) return INF;
return dis[p];
}
int main()
{
int i,k,m,t;
while(~scanf("%d",&n) && n)
{
m = INF;
tp = 0;
memset(head,-1,sizeof(head));
for(i = 1; i <= n; ++i)
{
scanf("%d",&k);
while(k--)
{
scanf("%d %d",&eg[tp].v,&eg[tp].w);
eg[tp].next = head[i];
head[i] = tp++;
}
}
k = 0;
for(i = 1; i <= n; ++i)
{
t = Dijkstra(i);
if(t < m)
{
k = i;
m = t;
}
}
if(k)
printf("%d %d\n",k,m);
else puts("disjoint");
}
return 0;
}
SPFA 180K 0MS 1668B
#include
using namespace std;
typedef struct Edge
{
int v,w,next;
}Edge;
Edge eg[11111];
int head[111],dis[111],n,tp;
bool vis[111];
int SPFA(int u)
{
memset(dis,INF,sizeof(dis));
memset(vis,0,sizeof(vis));
dis[u] = 0;
queue <int> q;
q.push(u);
int v,w,i,p,m;
while(!q.empty())
{
p = q.front();
q.pop();
vis[u] = 0;
for(i = head[p]; i != -1; i = eg[i].next)
{
v = eg[i].v;
w = eg[i].w;
if(dis[v] > dis[p] + w)
{
dis[v] = dis[p] + w;
if(!vis[v])
{
vis[v] = 1;
q.push(v);
}
}
}
}
m = 0;
for(i = 1; i <= n; ++i)
{
if(i == u) continue;
if(dis[i] == INF) return INF;
m = max(m,dis[i]);
}
return m;
}
int main()
{
int i,k,m,t;
while(~scanf("%d",&n) && n)
{
m = INF;
tp = 0;
memset(head,-1,sizeof(head));
for(i = 1; i <= n; ++i)
{
scanf("%d",&k);
while(k--)
{
scanf("%d %d",&eg[tp].v,&eg[tp].w);
eg[tp].next = head[i];
head[i] = tp++;
}
}
k = 0;
for(i = 1; i <= n; ++i)
{
t = SPFA(i);
if(t < m)
{
k = i;
m = t;
}
}
if(k)
printf("%d %d\n",k,m);
else puts("disjoint");
}
return 0;
}
【POJ 1125】Stockbroker Grapevine的更多相关文章
- POJ 1125:Stockbroker Grapevine
Stockbroker Grapevine Time Limit: 1000MS Memory Limit: 10000KB 64bit IO Format: %I64d & %I64 ...
- bzoj 2295: 【POJ Challenge】我爱你啊
2295: [POJ Challenge]我爱你啊 Time Limit: 1 Sec Memory Limit: 128 MB Description ftiasch是个十分受女生欢迎的同学,所以 ...
- 【链表】BZOJ 2288: 【POJ Challenge】生日礼物
2288: [POJ Challenge]生日礼物 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 382 Solved: 111[Submit][S ...
- BZOJ2288: 【POJ Challenge】生日礼物
2288: [POJ Challenge]生日礼物 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 284 Solved: 82[Submit][St ...
- BZOJ2293: 【POJ Challenge】吉他英雄
2293: [POJ Challenge]吉他英雄 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 80 Solved: 59[Submit][Stat ...
- BZOJ2287: 【POJ Challenge】消失之物
2287: [POJ Challenge]消失之物 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 254 Solved: 140[Submit][S ...
- BZOJ2295: 【POJ Challenge】我爱你啊
2295: [POJ Challenge]我爱你啊 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 126 Solved: 90[Submit][Sta ...
- BZOJ2296: 【POJ Challenge】随机种子
2296: [POJ Challenge]随机种子 Time Limit: 1 Sec Memory Limit: 128 MBSec Special JudgeSubmit: 114 Solv ...
- BZOJ2292: 【POJ Challenge 】永远挑战
2292: [POJ Challenge ]永远挑战 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 513 Solved: 201[Submit][ ...
随机推荐
- java设计模式--行为型模式--命令模式
命令模式 概述 将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或记录请求日志,以及支持可撤消的操作. 适用性 .抽象出待执行的动作以参数化某对象. .在不同的时刻指定.排 ...
- 新浪系统工程师笔试--shell
1. test01 test02 1 200 1 100 2 500 2 300 3 200 3 50 4 100 4 150 输出 200 100 100 500 300 ...
- Codeforces Round #245 (Div. 1)——Working out
题目链接 题意: 一个n*m的矩阵,每一个方格有一个非负数,如今选择两条线路:一个左上到右下,一个左下到右上,且仅仅能有一个公共点. 求两个线路上数的最大值(公共点不算) 分析: 仅仅有两种情况,dp ...
- LSH算法原理
原始链接--http://www.jiahenglu.net/NSFC/LSH.html LSH(Location Sensitive Hash),即位置敏感哈希函数.与一般哈希函数不同的是位置敏感性 ...
- Hibernate征途(二)之基础与核心
根据我司优良传统,必然要由上向下.逐级深入,所以在钻到Hibernate细节之前,先从宏观上行欣赏一下Hibernate.为什么说是欣赏?大家可以自行查阅一下Hibernate知识外的信息,创始人和H ...
- 依赖注入及AOP简述(十)——Web开发中常用Scope简介 .
1.2. Web开发中常用Scope简介 这里主要介绍基于Servlet的Web开发中常用的Scope. l 第一个比较常用的就是Application级Scope,通常我们会将一 ...
- URL传参中文乱码encodeURI、UrlDecode
传递参数 encodeURI("url.aspx?str"+"汉字")-----------(是 URi 不是URL) 后台接收参数 Server.Url ...
- Hadoop安装(2)安装hadoop 前的centos 设置
将虚拟机网络连接设为:Bridged 添加用户:hadoop,设置密码.关闭防火墙,selinux.暂且不关闭不需要的任务. 参照:http://www.cnblogs.com/xia520pi/ar ...
- Android EditText 取消复制粘贴功能,取消横向全屏编辑功能(一)
在做一些安全性的软件时候常常要考虑取消 EditText 上的复制粘贴功能以确保安全性.下面就记录了这个方法: 首先在API-11以下的版本很简单,只需要在Xml布局文件或者用代码把长按属性设置成fa ...
- Ext布局篇
EXT标准布局类 收藏 面板相当于一张干净的白纸,如果直接在上面添加内容,将很难控制面板中内容的显示位置,面板元素越多就越显得凌乱,所以需要在面板上划分不同的区域,将面板内容展示到希望的位置上.E ...