Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <vector>
- using namespace std;
- int main() {
- ifstream inp("input.txt");
- int n, m, x, y;
- inp >> n >> m;
- vector<vector<int>> table (n, vector<int>(n, 1001));
- for (int i = 0; i < m; ++i) {
- inp >> x >> y >> table[x - 1][y - 1];
- }
- inp.close();
- for (int k = 0; k < n; ++k) {
- for (int i = 0; i < n; ++i) {
- for (int j = 0; j < n; ++j) {
- if (table[i][k] < 1001 && table[k][j] < 1001) {
- table[i][j] = min(table[i][j], table[i][k] + table[k][j]);
- }
- }
- }
- }
- ofstream out("output.txt");
- for (int i = 0; i < n; ++i) {
- for (int j = 0; j < n; ++j) {
- if (i == j) {
- out << 0;
- }
- else if (table[i][j] != 1001) {
- out << table[i][j];
- }
- else {
- out << " ";
- }
- if (j < n - 1) {
- out << " ";
- }
- }
- out << "\n";
- }
- out.close();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement