Advertisement
Mikhail-Podbolotov

Untitled

May 22nd, 2024
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.75 KB | None | 0 0
  1. #include <fstream>
  2. #include <iostream>
  3. using namespace std;
  4. int main()
  5. {
  6.     ifstream input("input.txt");
  7.     int n, d, a;
  8.     input >> n >> d >> a;
  9.     int** inputMatrix = new int*[n];
  10.     cout << "Input Matrix:" << endl;
  11.     for (int i = 0; i < n; i++) {
  12.         inputMatrix[i] = new int[n];
  13.         for (int j = 0; j < n; ++j) {
  14.             input >> inputMatrix[i][j];
  15.             cout << inputMatrix[i][j] << " ";
  16.         }
  17.         cout << endl;
  18.     }
  19.     int cost = 0;
  20.     char** resMatrix = new char* [n];
  21.     for (int i = 0; i < n; i++) {
  22.         resMatrix[i] = new char[n];
  23.         for (int j = 0; j < n; ++j) {
  24.             resMatrix[i][j] = '0';
  25.         }
  26.     }
  27.     bool Flag = false;
  28.     for (int i = 0; i < n - 1; i++) {
  29.         Flag = false;
  30.         for (int j = n - 1; j > i ; j--) {
  31.             if (Flag and inputMatrix[i][j] == 1) {
  32.                 inputMatrix[i][j] = 0;
  33.                 inputMatrix[j][i] = 0;
  34.                 resMatrix[i][j] = 'd';
  35.                 resMatrix[j][i] = 'd';
  36.                 cost += d;
  37.             }
  38.             if (inputMatrix[i][j] == 1) Flag = true;
  39.         }
  40.         if (!Flag) {
  41.             cost += a;
  42.             inputMatrix[i][i+1] = 1;
  43.             inputMatrix[i+1][i] = 1;
  44.             resMatrix[i][i + 1] = 'a';
  45.             resMatrix[i + 1][i] = 'a';
  46.         }
  47.     }
  48.     cout << "Result Matrix after replacment: " << endl;
  49.     for (int i = 0; i < n; i++) {
  50.         for (int j = 0; j < n; j++) {
  51.             cout << inputMatrix[i][j] << " ";
  52.         }
  53.         cout << endl;
  54.     }
  55.     cout << "Answer: " << cost << endl;
  56.     for (int i = 0; i < n; i++) {
  57.         for (int j = 0; j < n; j++) {
  58.             cout << resMatrix[i][j] << " ";
  59.         }
  60.         cout << endl;
  61.     }
  62. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement