👤

Problema turnurilor din hanoi..


Imi poate explica si mie cineva cum se rezolva algoritmul ???


Răspuns :

Turnurile din Hanoi folosesc metoda Divide et Impera. Ai mai jos o sursa pe care o poti parcurge pas cu pas. Succes!
#include <bits/stdc++.h>
using namespace std;
char a, b, c;
int n;
void han (int n, char a, char b, char c)
{
   if (n == 1) cout << a << " " << b << "\n";
    else
    {
       han(n - 1, a, c, b);
       cout << a << " " << b << "\n";
       han(n - 1, c, b, a);
    }
}
main ()
{
  cout << " n = "; cin >> n;
  a = 'a'; b = 'b'; c = 'c';
  han(n, a, b, c);
}