Un artisan veut fabriquer un objet. S'il a déjà l'objet en stock (quantité > 0), c'est bon. Sinon, une table de recettes indique, pour certains objets, quel ingrédient il faut d'abord obtenir (une chaîne de fabrication : par exemple une Épée nécessite un Lingot, qui nécessite du Minerai). Écris une fonction récursive CanCraft qui remonte la chaîne jusqu'à trouver un ingrédient déjà en stock, ou renvoie false si la chaîne s'arrête sans rien trouver.
Exemple
CanCraft({"Ore": 5}, {"Sword": "Ingot", "Ingot": "Ore"}, "Sword") renvoie true (Épée → Lingot → Minerai, et il y a du Minerai en stock).
CanCraft({"Wood": 2}, {"Sword": "Ingot", "Ingot": "Ore"}, "Sword") renvoie false (la chaîne remonte jusqu'à Minerai, qui n'a pas de recette et n'est pas en stock).