C++ copie vecteur multidimensionnel

Je vais avoir des problèmes lors de la copie d'un vecteur multidimensionnel, j'ai essayé beaucoup de choses, mais c'est la dernière:

vector < vector < int > > a;
vector < vector < int > > b;
a.resize(10);
b.resize(10);
a[0][0] = 123;
copy( a.begin(), a.end(), back_inserter(b) );
cout << b[0][0];

Je suis en train de faire une boucle récursive qui compte toutes les voies possibles dans une grille à l'intérieur de 10 mouvements. Je suis en train de créer un vecteur appelé current_path qui tiendrait le chemin d'accès actuel pour chaque récursion, lorsque le current_path a 10 se déplace, Il va copier les données à partir de current_path à all_paths.

La grille qui va comme ceci:

0  1  2 3
4  5  6 7
8  9  10 11
12 13 14 15

Vous ne pouvez déplacer un carré, vous touchez donc de 0, vous pouvez passer à 1, 4 et 5. Et de 1 à 3, 4, 5, 6 etc.

L'idée principale est de copier le current_path pour le prochain appel de la fonction (récursive) de sorte qu'il tiendrait le curren_path jusqu'à ce point, jusqu'à ce que il est plein (10 étapes). Après c'est copié à partir de current_path à all_paths je suppose que je dois supprimer la current_path?

Je sais comment calculer efficacement toutes les étapes, mais je vais avoir des problèmes lors de la copie de la current_path et probablement et comment puis-je ajouter de la current_path à all_paths quand je suis à 10 étapes?

  • Voici une réponse à une question similaire, j'ai répondu hier, il vous suffit de remplir le vecteur avec des nombres et de changer les numéros de la façon dont vous en avez besoin stackoverflow.com/questions/13552430/...
InformationsquelleAutor unska | 2012-11-26