Écrivez une fonction qui prend un nombre comme argument et en fait un palindrome en ajoutant un nombre minimum de chiffres. Le numéro sera au maximum de 100 chiffres.
Sample Inputs
12
122
232
2323
1012121
Sample Outputs
121
1221
232
23232
101212101
Écrivez une fonction qui prend un nombre comme argument et en fait un palindrome en ajoutant un nombre minimum de chiffres. Le numéro sera au maximum de 100 chiffres.
Sample Inputs
12
122
232
2323
1012121
Sample Outputs
121
1221
232
23232
101212101
Réponses:
J,
50,3226 caractères!par exemple
Comment ça marche (par exemple)
la source
Perl, 32 caractères
Nécessite Perl 5.10 ou une version ultérieure pour les fonctionnalités d'expression régulière, mais pas de commutateur de ligne de commande spécial.
Exemple d'utilisation:
Utilise les extensions de regex récursives de Perl 5.10 pour correspondre au palindrome de fuite le plus long en tant que tel:
Il le remplace ensuite par lui-même (
$&
) et ajoute tout ce que la chaîne a commencé par ($`
), inversé.la source
Brachylog 2, 8 octets, défi de postdates de langue
Essayez-le en ligne! La question demande une fonction, alors j'en ai fourni une; le lien TIO prend un argument qui exécute une fonction comme un programme complet.
Explication
la source
Python, 88 caractères
la source
Python (
10196)edit: raccourci basé sur la solution de @ gnibbler
Original:
la source
n
.s=n
aide; Je doiss
être une chaîne afin de pouvoir souscrire pour obtenir des plages de chiffres. Quel est le raisonnement là-bas?Python - 98 caractères
Basé sur la réponse de Hoa :)
la source
return(...).next()
général, ce qui coûterait un caractère supplémentaire, mais je peux supprimer l'espace aprèsreturn
. Hoa l'a encore amélioré de toute façon en utilisant un LC au lieu d'un GEGolfscript - 32 caractères
la source
Haskell, 85
En utilisant le même algorithme que la plupart des autres:
Exemples de description du problème:
la source
Ruby 1.9, 72 caractères
la source
Rubis , 70 octets
Essayez-le en ligne!
Basé sur la réponse de VOUS , avec des caractères au lieu de .split '' pour gagner 2 caractères. Et je suis sûr qu'il y a moyen de presser un peu plus> <
la source
JavaScript (ES6),
145126 caractèresCommenté:
la source
Java, 174 octets
Non golfé:
J'ai le sentiment que cela pourrait être beaucoup plus serré, mais je ne sais pas immédiatement comment. La fonction mange beaucoup d'espace mais j'en avais besoin à deux endroits.
Cela fonctionne pour n'importe quelle chaîne, pas seulement pour les nombres, et cela peut avoir n'importe quelle longueur.
la source
PHP, 64 octets
Essayez-le en ligne!
la source