Advertisement
Guest User

Untitled

a guest
Mar 25th, 2017
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.94 KB | None | 0 0
  1. #define _CRT_SECURE_NO_WARNINGS
  2. #include <iostream>
  3. #include <fstream>
  4. #include <vector>
  5. #include <string>
  6. #include <algorithm>
  7. using namespace std;
  8.  
  9. vector < vector<int>>used;
  10. vector<vector<int>>D;
  11. vector<vector<int>>mas;
  12.  
  13.  
  14. int rec(int n, int m) {
  15.     int a, b, c;
  16.     if (n >7 || n<0 || m>7 ||m<0) return 1001;
  17.     if (used[n][m] == -1) {
  18.         a = rec(n + 1, m - 1);
  19.         b = rec(n - 1, m);
  20.         c = rec(n, m + 1);
  21.         int mini = min(a, min(b, c));
  22.         D[n][m] += mini + mas[n][m];
  23.         used[n][m] = 1;
  24.     }
  25.     return D[n][m];
  26. }
  27. int main() {
  28.  
  29. #ifdef _DEBUG
  30.     freopen("input.txt", "r", stdin);
  31.     freopen("output.txt", "w", stdout);
  32. #else
  33.     freopen("king2.in", "r", stdin);
  34.     freopen("king2.out", "w", stdout);
  35. #endif
  36.     used.resize(8, vector<int>(8, -1));
  37.     D.resize(8, vector<int>(8, 0));
  38.     mas.resize(8, vector<int>(8, 0));
  39.     for (int i = 0; i < 8; i++)
  40.         for (int j = 0; j < 8; j++)
  41.             cin >> mas[i][j];
  42.     D[7][0] = 0;
  43.     used[7][0] = 1;
  44.     cout << rec(0,7);
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement