Escriba una función que tome un número como argumento y lo convierta en un palíndromo agregando un número mínimo de dígitos. El número tendrá un máximo de 100 dígitos.
Sample Inputs
12
122
232
2323
1012121
Sample Outputs
121
1221
232
23232
101212101
Respuestas:
J,
50,3226 caracteres!p.ej
Cómo funciona (por ejemplo)
fuente
Perl, 32 caracteres
Necesita Perl 5.10 o posterior para las funciones de expresiones regulares, pero no necesita un interruptor especial de línea de comandos.
Uso de la muestra:
Utiliza extensiones de expresiones regulares recursivas de Perl 5.10 para que coincida con el palíndromo final más largo como tal:
Luego lo reemplaza por sí mismo (
$&
) y agrega lo que la cadena comenzó con ($`
), invertida.fuente
Brachylog 2, 8 bytes, desafío de fechas posteriores al idioma
Pruébalo en línea! La pregunta pide una función, así que proporcioné una; el enlace TIO toma un argumento que ejecuta una función como un programa completo.
Explicación
fuente
Python, 88 caracteres
fuente
Pitón (
10196)editar: Acortado según la solución de @ gnibbler
Original:
fuente
n
.s=n
ayuda; Necesitos
ser una cadena para poder subíndice para obtener rangos de dígitos. ¿Cuál es el razonamiento allí?Python - 98 caracteres
Basado en la respuesta de Hoa :)
fuente
return(...).next()
general que costaría un char adicional, pero luego puedo dejar el espacioreturn
. Hoa ha mejorado de nuevo de todos modos al usar un LC en lugar de un GEGolfscript - 32 caracteres
fuente
Haskell, 85
Usando el mismo algoritmo que la mayoría de los demás:
Ejemplos de la descripción del problema:
fuente
Ruby 1.9, 72 caracteres
fuente
Ruby , 70 bytes
Pruébalo en línea!
Según la respuesta de USTED , con caracteres en lugar de .split '' para obtener 2 caracteres. Y estoy seguro de que hay forma de exprimir un poco más> <
fuente
JavaScript (ES6),
145126 caracteresComentado:
fuente
Java, 174 bytes
Sin golf:
Tengo la sensación de que podría ser mucho más estricto, pero no es inmediatamente obvio para mí cómo. La función consume mucho espacio, pero la necesitaba en dos lugares.
Esto funciona para cualquier cadena, no solo números, y puede tener cualquier longitud.
fuente
PHP, 64 bytes
Pruébalo en línea!
fuente