#include#include #define MAX 100 #define infinity 100 typedef struct { int vexs[MAX]; int arcs[MAX][MAX]; int arc_count,vex_count; }graph; typedef struct { int weight; int visited; }lnode; typedef struct { int vertex; int length; int prevex; }path; int main() { graph p; path dist[MAX]; scanf("%d %d",&p.vex_count,&p.arc_count); for(int i=0;i dist[minvex].length+p.arcs[minvex][j]) { dist[j].length=dist[minvex].length+p.arcs[minvex][j]; dist[j].prevex=minvex; } } if(dist[note].length==MAX) dist[note].length=-1; printf("1 %d %dn",note+1,dist[note].length); } return 0; } //test
写的不好,凑合看一下,但是确实自己写的



