HDU1598——find the most comfortable road
2011-11-25 20:33
323 查看
//开始用DFS,不断超时啊( ⊙ o ⊙ )!
//贪心+并查集,对所有边排序,然后枚举每一条边,每条边的两个点合并为一个集合,当出现通路时就结束
//利用了并查集的思想,其实就是和kruskal里面的实现是一个样子,枚举加了贪心
View Code
//贪心+并查集,对所有边排序,然后枚举每一条边,每条边的两个点合并为一个集合,当出现通路时就结束
//利用了并查集的思想,其实就是和kruskal里面的实现是一个样子,枚举加了贪心
View Code
#include <stdio.h> #include <stdlib.h> #define inf 9999999 #define N 1001 struct _ed { int s; int e; int l; }ed ; int f[210]; int cmp(const void *a, const void *b) { return (*(struct _ed *)a).l - (*(struct _ed *)b).l; } int find(int x) { if(f[x] != x) { f[x] = find(f[x]); } return f[x]; } int main() { int i, j, n, m, fx, fy, q, s, e, ans; while(scanf("%d%d", &n, &m) != EOF) { for(i=0;i<m;i++) { scanf("%d%d%d", &ed[i].s, &ed[i].e, &ed[i].l); } scanf("%d", &q); qsort(ed, m, sizeof(ed[0]), cmp); while(q --) { scanf("%d%d", &s, &e); ans = inf; for(i=0;i<m;i++) { for(j=1;j<=n;j++) { f[j] = j; } for(j=i;j<m;j++) { fx = find(ed[j].s); fy = find(ed[j].e); f[fx] = fy; if( find(s) == find(e) ) { break; } } if(j >= m) { break; } if(ans > ed[j].l - ed[i].l) { ans = ed[j].l - ed[i].l; } } if(ans == inf) { printf("-1\n"); } else { printf("%d\n", ans); } } } return 0; }
相关文章推荐
- HDU 1598 find the most comfortable road (最小生成树)
- hdu 1598 find the most comfortable road(枚举+并查集)
- find the most comfortable road HDU - 1598
- hdu 1598 find the most comfortable road(并查集+枚举)
- HDU-1598-find the most comfortable road(暴力+并查集)多看看,
- HDU--杭电1598--find the most comfortable road--并查集+暴力--反正是大众化的代码,只是我喜欢多写点东西导致我的注释比较多罢了
- HDU 1598 find the most comfortable road (最小生成树) >>
- HDU 1598 find the most comfortable road(最小生成树之Kruskal)
- HDU 1598 find the most comfortable road 二分+bfs or 并查集枚举
- HDU-1598 find the most comfortable road
- HDU 1598 find the most comfortable road
- HDU 1598 find the most comfortable road
- hdu 1598 find the most comfortable road
- 【HDU】1598 find the most comfortable road 最短路
- hdu 1598 find the most comfortable road
- HDU 1598 find the most comfortable road(最小生成树之Kruskal)
- hdu 1598 find the most comfortable road
- hdu 1598 find the most comfortable road
- HDU-1598-find the most comfortable road
- hdu 1598 find the most comfortable road(并查集+枚举)