public static bool IsValid(Graphe graphe ,int[] partialSolution, int position, int value)
        {
            if (position > 0)
            {
                // Is connected
                if (!graphe.IsConnected(partialSolution[position - 1], value))
                {
                    return false;
                }

                // Already exist
                for (int i = 0; i < position; i++)
                {
                    if (partialSolution[i] == value)
                    {
                        return false;
                    }
                }
            }

            return true;
        }