摘要:
#include<stdio.h>const int N=1005;int n,m;bool mat[N][N];int prec[N][N],succ[N][N];void floyd(){for(int k=1;k<=n;k++){for(int i=1;i<=prec[k][0];i++){int a=prec[k][i];for(int j=1;j<=succ[k][0];j++){int b=succ[k][j];if(!mat[a][b]){mat[a][b]=true;prec[b][++prec[b][0]]=a;succ[a][++succ[a] 阅读全文
posted @ 2011-08-25 22:28
不是我干的
阅读(253)
评论(0)
推荐(0)
摘要:
我用的是dij最短路做。刚开始wa了。因为记录路径的问题。。。太菜了。#include<iostream>using namespace std;int n,m;const int N=1005;bool mat[N][N];bool visit[N];int d[N];int pre[N];const int inf=9999999;void print(int u){if(u==1)printf("%d\n",u);else{print(pre[u]);printf("%d\n",u);}}void dij(){for(int i=1;i 阅读全文
posted @ 2011-08-25 14:26
不是我干的
阅读(266)
评论(0)
推荐(0)
浙公网安备 33010602011771号