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的更多相关文章

  1. POJ 1125:Stockbroker Grapevine

    Stockbroker Grapevine Time Limit: 1000MS   Memory Limit: 10000KB   64bit IO Format: %I64d & %I64 ...

  2. bzoj 2295: 【POJ Challenge】我爱你啊

    2295: [POJ Challenge]我爱你啊 Time Limit: 1 Sec  Memory Limit: 128 MB Description ftiasch是个十分受女生欢迎的同学,所以 ...

  3. 【链表】BZOJ 2288: 【POJ Challenge】生日礼物

    2288: [POJ Challenge]生日礼物 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 382  Solved: 111[Submit][S ...

  4. BZOJ2288: 【POJ Challenge】生日礼物

    2288: [POJ Challenge]生日礼物 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 284  Solved: 82[Submit][St ...

  5. BZOJ2293: 【POJ Challenge】吉他英雄

    2293: [POJ Challenge]吉他英雄 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 80  Solved: 59[Submit][Stat ...

  6. BZOJ2287: 【POJ Challenge】消失之物

    2287: [POJ Challenge]消失之物 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 254  Solved: 140[Submit][S ...

  7. BZOJ2295: 【POJ Challenge】我爱你啊

    2295: [POJ Challenge]我爱你啊 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 126  Solved: 90[Submit][Sta ...

  8. BZOJ2296: 【POJ Challenge】随机种子

    2296: [POJ Challenge]随机种子 Time Limit: 1 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 114  Solv ...

  9. BZOJ2292: 【POJ Challenge 】永远挑战

    2292: [POJ Challenge ]永远挑战 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 513  Solved: 201[Submit][ ...

随机推荐

  1. 创立Est•Design华服高级成衣定制工作室 - 北京服装学院-莱佛士国际学院

    创立Est•Design华服高级成衣定制工作室 - 北京服装学院-莱佛士国际学院 创立Est•Design华服高级成衣定制工作室 创立Est•Design华服高级成衣定制工作室 童雪涛   " ...

  2. DBS小结

    <数据库系统原理>主要介绍的是数据库技术的基本原理.方法和应用技术. 它可以使我们能有效地使用现有的数据库管理系统和软件开发工具,掌握数据库结构的设计和数据库应用系统的开发原理. 在这里, ...

  3. linux服务器WEB环境一键安装包lanmp教程之五

    在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.增 ...

  4. C编译器、链接器、加载器详解

    摘自http://blog.csdn.net/zzxian/article/details/16820035 C编译器.链接器.加载器详解 一.概述 C语言的编译链接过程要把我们编写的一个c程序(源代 ...

  5. Ice_cream’s world III(prime)

    Ice_cream’s world III Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Othe ...

  6. leetcode_question_130 Surrounded Regions

    Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is captured ...

  7. Metropolis Hasting算法

    Metropolis Hasting Algorithm: MH算法也是一种基于模拟的MCMC技术,一个非常重要的应用是从给定的概率分布中抽样.主要原理是构造了一个精妙的Markov链,使得该链的稳态 ...

  8. GDAL1.11版本号对SHP文件索引加速測试

    GDAL库中对于矢量数据的读取中能够设置一些过滤器来对矢量图形进行筛选.对于Shapefile格式来说.假设数据量太大,设置这个过滤器时间慢的简直无法忍受.好在GDAL1.10版本号開始支持读取Sha ...

  9. 充分利用HTML标签元素 – 简单的xtyle前端框架

    xtyle框架充分利用语义化标签来做美化样式,兼容多款主流浏览器,包括IE8. xtyle框架虽然没BS这么强大,但我觉得也很实用,体积不算很大,适用于企业网站.WordPress主题.个人网站.博客 ...

  10. Java日志管理

    首页 资讯 精华 论坛 问答 博客 专栏 群组 更多 ▼ 您还未登录 ! 登录 注册 JavaCrazyer的ItEye(codewu.com)技术博客   博客 微博 相册 收藏 留言 关于我   ...