import java.util.*; public class Main { public static void main(String[] args){ // TODO Auto-generated method stub Scanner in=new Scanner(System.in); while(in.hasNext()) { int n=in.nextInt(); int m=in.nextInt(); int k=in.nextInt(); int [][]lu=new int[n+1][n+1]; for(int i=0;i<m;i++) { int a=in.nextInt(); int b=in.nextInt(); int l=in.nextInt(); lu[a][b]=l; lu[b][a]=l; } for(int i=0;i<k;i++) { int start=in.nextInt(); int end=in.nextInt(); int min=findway(lu,start,end,0); System.out.println(min); } } } public static int findway(int[][]lu,int start,int end,int dis) { if(start==end) { return dis; }else { int min=Integer.MAX_VALUE; for(int i=0;i<lu[start].length;i++) { if(lu[start][i]==0) { continue; }else { int r=lu[start][i]; lu[start][i]=0; lu[i][start]=0; int d=findway(lu,i,end,dis+r); lu[start][i]=r; lu[i][start]=r; if(d<min) { min=d; } } } return min; } } } |
Double click to view unformatted code.