POJ 3255 次短路
(2010-09-20 20:40:46)
标签:
poj3255次短路it |
分类: 图论 |
题目描述:
给你n个点,m条边。问你从1号点到n号点的次短路是多少。
解题报告:
用d[0][i]表示1点到i点的最短路(一遍spfa)
用d[1][i]表示n点到i点的最短路(一遍spfa)
遍历所有边:
如果d[0][边起点] + 边权 + d[1][边终点]不等于d[0][n],所有的这些的最小值就是答案。
同理,可以应用到k短路,都是这样找就可以。
代码如下:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define size 5001
struct edge{int from, to, val, next;} e[300000];
int que[size * 10], v[size], n, cnt, m, d[2][size]; bool
vst[size];
void insert(int from, int to, int val)
{
}
void spfa(int sta, int n, int *d)
{
}
int main()
{
}