Cod sursa(job #1705591)

Utilizator deeagrtAndGrt deeagrt Data 20 mai 2016 20:20:50
Problema Floyd-Warshall/Roy-Floyd Scor 30
Compilator java Status done
Runda Arhiva educationala Marime 1.15 kb

import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.OutputStream;
public class Main {
	 static int[][] adj;

	 
	public static void main(String[] args) throws IOException {
		 BufferedReader bf = new BufferedReader(new FileReader("royfloyd.in"));
		 OutputStream out = new BufferedOutputStream ( new FileOutputStream("royfloyd.out") );
	     String a= bf.readLine();
	     int n = Integer.parseInt(a);
		 adj = new int[n+1][n+1];
		 String[] tmp;
		
	     for (int i = 0; i < n; i++) {
	    	 tmp = bf.readLine().split(" ");
	    	 for (int j= 0; j < n; j++) 
	    		 adj[i][j] = Integer.parseInt(tmp[j]);
      
	     }
	    for (int k = 0 ; k < n ; k++)
	     for (int i = 0 ; i < n ; i++)	
	    	 for (int j = 0 ; j < n ; j++)
	    		 adj[i][j] = Math.min(adj[i][j], adj[i][k] + adj[k][j]);
	    
	    for (int i = 0 ; i < n ; i++)	{
	    	for (int j = 0 ; j < n ; j++)
	    		out.write((adj[i][j]+" ").getBytes());
	    	out.write(("\n").getBytes());
	    }
		 out.flush();
		 out.close();
		 bf.close();
		 
	}
}