hello friends i m trying to solve problem http://online-judge.uva.es/p/v5/523.html
in this problem i using floyd's algorithm i m able to figure out total cost but i m not able to figure out the path . may be the reason that i did not understand the algorithm fully and i use it as a black box but now i have to go inside blackbox so plz help me to figure out the path... here is my code ... #include<iostream> using namespace std; #define inf 1000000 int pathcost[1000][1000],pre[1000][1000]; int takeinput() { int j,k=0,m; char c; while(cin.get(c) && c!='\n') { if((c>='0' && c<='9') || (c=='-')) { cin.unget(); cin>>pathcost[0][k]; if(pathcost[0][k]==-1) pathcost[0][k]=inf; k++; } } return(k); } int main() { int m1,citytax[1000],w,i,j,k,t1,t2; char c; scanf("%d",&m1); getchar();//one for \n and anthor for blank line getchar(); while(m1--) { w=takeinput(); //printf("w=%d\n",w); for( i=1;i<w;i++) for( j=0;j<w;j++) { cin>>pathcost[i][j]; if(pathcost[i][j]==-1) pathcost[i][j]=inf; } for(i=0;i<w;i++) cin>>citytax[i]; getchar(); for(i=0;i<w;i++) for(j=0;j<w;j++) pre[i][j]=i; for(k=0;k<w;k++) { for(i=0;i<w;i++) { for(j=0;j<w;j++) { if(pathcost[i][j]>pathcost[i][k]+pathcost[k][j]+citytax[k]) { pathcost[i][j]=pathcost[i][k]+pathcost[k][j]+citytax[k]; pre[i][j]=pre[k][j]; } } } } while(cin.get(c) && c!='\n') { cin.unget(); cin>>t1>>t2; printf("From %d to %d :\n",t1,t2); printf("Total cost : %d\n",pathcost[t1-1][t2-1]); getchar(); } printf("\n"); } } --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/algogeeks -~----------~----~----~----~------~----~------~--~---