Nous avons une séquence strictement croissante d'entiers non négatifs, comme:
12 11 10
Attendez! Cette séquence n'est pas strictement croissante, n'est-ce pas? Eh bien, les nombres sont écrits dans différentes bases. La base la moins possible est 2, la plus grande est 10.
La tâche consiste à deviner les bases de chaque nombre est écrit, de sorte que:
- la séquence est strictement croissante,
- la somme des bases est maximisée.
Par exemple, la solution pour l'échantillon sera:
6 8 10
car sous ces bases la séquence devient 8 9 10décimale - une séquence strictement croissante, et nous ne sommes pas capables de trouver des bases pour lesquelles la séquence reste strictement croissante et dont la somme est supérieure à 6+8+10.
En raison de la deuxième limitation, une solution 3 5 7n'est pas satisfaisante: malgré le fait que la séquence devienne 5 6 7sous ces bases - nous devons maximiser la somme des bases, et 3+5+7 < 6+8+10.
Si sous aucune base 2<=b<=10il est possible que la série augmente strictement, par exemple:
102 10000 10
Célibataire
0
devrait être sortie.
La séquence d'entrée peut être passée de la manière la plus pratique pour votre solution (entrée standard / paramètres de ligne de commande / arguments de fonction ...).
1 3 5et 1 7 22montent tous les deux sous la base 10. Donc, la solution pour les deux cas est 10 10 10, parce que nous devons maximiser la somme des bases tout en garantissant que la séquence augmente quand le nième nombre est interprété comme étant écrit en base égale à n -ème terme de solution.
1 1 1ou 3 3 4ne montent pas.
1 3 5une séquence montante? Et alors1 7 22? (en base 10)