Advertisement
Guest User

Untitled

a guest
Feb 20th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.04 KB | None | 0 0
  1. void move(int n, int x = 1, int y = 3) {
  2.     if (n == 1) {
  3.         if ((x+1 == y) || (x == 3 && y == 1)) {  // последовательное перемещение
  4.             std::cout << n << ' ' << x << ' ' << y << std::endl;
  5.         } else {  // перемещение через 1
  6.             int temp = 6 - x - y;
  7.             std::cout << n << ' ' << x << ' ' << temp << std::endl;
  8.             std::cout << n << ' ' << temp << ' ' << y << std::endl;
  9.         }
  10.     } else {
  11.         int temp = 6 - x - y;
  12.         if ((x+1 == y) || (x == 3 && y == 1)) {  // последовательное перемещение
  13.             move(n-1, x, temp);
  14.             std::cout << n << ' ' << x << ' ' << y << std::endl;
  15.             move(n-1, temp, y);
  16.         } else {  // перемещение через 1
  17.             move(n-1, x, y);
  18.             std::cout << n << ' ' << x << ' ' << temp << std::endl;
  19.             move(n-1, y, x);
  20.             std::cout << n << ' ' << temp << ' ' << y << std::endl;
  21.             move(n-1, x, y);
  22.         }
  23.     }
  24. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement