fork download
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6. int n, e;
  7. cin>>n>>e;
  8. long long int graph[n+1][n+1];
  9. for(int i = 1; i <= n; i++)
  10. {
  11. for(int j = 1; j <= n; j++)
  12. {
  13. if(i == j)graph[i][j] = 0;
  14. else graph[i][j] = INT_MAX;
  15. }
  16. }
  17. int u, v, w;
  18. for(int i = 1; i <= e; i++)
  19. {
  20. cin>>u>>v>>w;
  21. graph[u][v] = w;
  22. }
  23. cout<<"A0"<<endl;
  24. for(int p = 1; p <= n; p++)
  25. {
  26. for(int q = 1; q <= n; q++)
  27. {
  28. cout<<graph[p][q]<<" ";
  29. }
  30. cout<<endl;
  31. }
  32.  
  33.  
  34. for(int k = 1; k <= n; k++)
  35. {
  36. cout<<"A"<<k<<endl;
  37. for(int i = 1; i <= n; i++)
  38. {
  39. for(int j = 1; j <= n; j++)
  40. {
  41. graph[i][j] = min(graph[i][j], graph[i][k]+graph[k][j]);
  42. }
  43. }
  44. for(int p = 1; p <= n; p++)
  45. {
  46. for(int q = 1; q <= n; q++)
  47. {
  48. cout<<graph[p][q]<<" ";
  49. }
  50. cout<<endl;
  51. }
  52.  
  53. }
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61. }
  62.  
Success #stdin #stdout 0s 5260KB
stdin
4 7                                                                              1 2 3                                                                            2 1 8                                                                            2 3 2                                                                            3 1 5                                                                            3 4 1                                                                            1 4 7                                                                            4 1 2 
stdout
A0
0 3 2147483647 7 
8 0 2 2147483647 
5 2147483647 0 1 
2 2147483647 2147483647 0 
A1
0 3 2147483647 7 
8 0 2 15 
5 8 0 1 
2 5 2147483647 0 
A2
0 3 5 7 
8 0 2 15 
5 8 0 1 
2 5 7 0 
A3
0 3 5 6 
7 0 2 3 
5 8 0 1 
2 5 7 0 
A4
0 3 5 6 
5 0 2 3 
3 6 0 1 
2 5 7 0