Énoncé¶
C'est fait, Joseph Nageant a réussi à s'infiltrer dans la muraille ! Cependant, il n'a pas réussi à obtenir de carte de la muraille en bonne et due forme, seulement une description des tours qui la compose. Joseph essaie donc de cartographier la muraille à partir des informations dont il dispose pour pouvoir se repérer.
La muraille est composée de $N$ tours, reliées par des remparts de manière à former un cycle. Chaque tour possède une unique porte d'entrée et une unique porte de sortie. La porte de sortie de la première tour est reliée à la porte d'entrée de la seconde tour, et ainsi de suite jusqu'à compléter la muraille.
Cependant, Joseph Nageant ne connait pas exactement l'ordre des tours. Il connait seulement la profondeur exacte de la porte d'entrée et de la porte de sortie de chaque tour, grâce aux tableaux $\mathtt{sortie}$ et $\mathtt{entree}$, où $\mathtt{sortie}_i$ indique la profondeur de la porte de sortie de la tour $i$, et $\mathtt{entree}_i$ indique la profondeur de la porte d'entrée de la tour $i$.
Dans la liste des tours que Joseph possède, les tours ne sont pas triées dans l'ordre du cycle, mais par ordre de profondeur. C'est-à-dire que pour deux tours en position $i < j$ dans sa liste, la porte d'entrée de la tour $j$ est toujours plus profonde que la porte d'entrée de la tour $i$, et la porte de sortie de la tour $j$ est toujours plus profonde que la porte de sortie de la tour $i$.
(Cependant, la porte d'entrée de la tour $i$ peut être plus profonde que la porte de sortie de la tour $j$, on sait simplement que les profondeur des portes d'entrées est une suite croissante, pareil pour les portes de sorties.)
Joseph Nageant sait aussi que la muraille a été construite de manière intelligente, de sorte que l'on puisse en faire le tour sans trop subir de dénivelé. Plus précisément, on considère que le coût de construire un rempart qui part de la porte de sortie d'une tour $A$ à la porte d'entrée d'une tour $B$ correspond à la différence de profondeur entre les deux portes, au carré.
Aidez Joseph Nageant à trouver un arrangement des tours qui pourrait être correct, c'est-à-dire qui minimise la somme des coûts de chaque rempart.
Entrée¶
L’entrée contiendra :
- Sur la première ligne, un entier : N, le nombre de tours.
- Sur la ligne suivante, une liste de N entiers séparés par des espaces : sortie, la profondeur de la porte de sortie de chaque tour.
- Sur la ligne suivante, une liste de N entiers séparés par des espaces : entree, la profondeur de la porte d'entrée de chaque tour.
Sortie¶
Afficher, sur une première ligne, le coût minimal d'un cycle passant par toutes les tours. Puis, sur une seconde ligne, afficher dans l'ordre les tours visitées par ce cycle, séparées par un espace. Si plusieurs cycles de même coût existent, afficher n'importe lequel d'entre eux.
Attention, la réponse peut être un entier supérieur à $2^{32}$, gare aux dépassements d'entier selon le langage !
Contraintes¶
- $2 \le N \le 10$
- $0 \le \mathtt{sortie}_i \le 1\,000\,000\,000$
- $0 \le \mathtt{entree}_i \le 1\,000\,000\,000$
- $\mathtt{sortie}$ est une liste strictement croissante
- $\mathtt{entree}$ est aussi une liste strictement croissante
Contraintes de performance¶
- $2 \le N \le 200\,000$