#include "graphe.h"
Aller au code source de ce fichier.
Macros | |
#define | ctrace(dbg, cond, G) (static_cast<void > (0)) |
Fonctions | |
res_regle | regle_0 (const entier_type &N, GRAPHE &G) |
La règle n°0 supprime des arêtes. | |
res_regle | regle_1 (const entier_type &N, GRAPHE &G) |
On teste la regle n°1 (suppression des galets inutiles). | |
res_regle | regle_2 (const entier_type &N, const GRAPHE &G, graph_list &L) |
On teste la regle n°2 (déplacement des galets). Puis on essaie de le déplacer, si l'on peut. On n'a pas besoin qu'un fils soit unique si le père est copié. On se sert de GRAPHE::bouge. Le noeud est supposé déterminé. On met le graphe à jour. | |
res_regle | regle_2 (const entier_type &N, GRAPHE &G) |
On teste la regle n°2 (déplacement des galets). Puis on essaie de le déplacer, si l'on peut. On ne peut déplacer un galet si :
| |
res_regle | regle_3 (const entier_type &N, GRAPHE &G) |
On teste la regle n°3 (ajout d'un galet). | |
res_regle | regle_4 (const entier_type &N, GRAPHE &G) |
On teste la regle n°4 (copie d'un galet). |
bool regle_i ( const int & N, graphe & G );
[in] | N | est le noeud sur lequel la règle s'applique, |
[in,out] | G | le graphe sur lequel on travaille |
[out] | L | un liste de graphe résultat. |
Définition dans le fichier regles.h.
#define ctrace | ( | dbg, | |||
cond, | |||||
G | ) | (static_cast<void > (0)) |
res_regle regle_0 | ( | const entier_type & | N, | |
GRAPHE & | G | |||
) |
La règle n°0 supprime des arêtes.
On enlève des arêtes, on fait des calculs si on peut. D'abord on élague en haut, puis si on peut, on élague en bas. On fait un peu de ménage si la récolte est bonne.
N | le n |