Dado un palíndromo generado de acuerdo con este desafío , despalindromécelo.
Casos de prueba
abcdedcba -> abcde
johncenanecnhoj -> johncena
ppapapp -> ppap
codegolflogedoc -> codegolf
Como se trata de despalindromizar, su código no puede ser un palíndromo .
Recuerde, esto es código golf , por lo que gana el código con la menor cantidad de bytes.
code-golf
restricted-source
palindrome
Oliver Ni
fuente
fuente
Respuestas:
Julia,
2115 bytesPruébalo en línea! (el código adicional es para imprimir la salida)
fuente
end/2
es una característica genial05AB1E , 3 bytes
Utiliza la codificación CP-1252 . Pruébalo en línea!
fuente
Python 2, 23 bytes
No puedo probar en mi teléfono, pero esto debería funcionar:
fuente
apt-get install python2
apt-get
en tu teléfono, probablemente no sea un teléfono normal.Guacamole Octo Fuzzy, 4 bytes
Pasé un tiempo buscando un idioma en el que este desafío es corto, y me di cuenta de que era tonto y mi propio idioma lo hizo.
fuente
05AB1E, 5 bytes
Pruébalo en línea!
Explicación:
fuente
Cheddar,
2218 bytesTan simple que no creo que necesite explicación, pero agregaré una si lo desea.
Pruébalo en línea
fuente
Pyth - 4 bytes
Test Suite .
fuente
JavaScript (ES6),
32 2625 bytes1 byte guardado gracias a Neil:
Mostrar fragmento de código
Soluciones anteriores
26 bytes gracias a Downgoat:
32 bytes:
fuente
s=>s.slice(0,s.length/2+1)
Dado que la longitud siempre será extrañas=>s.slice(0,s.length/2+.5)
más también funcionaría para una longitud uniforme.-s.length/2
funciona tanto para longitudes pares como impares.WinDbg,
8771 bytes-16 bytes al no insertar NULL, en lugar de pasar la longitud a
da
La entrada se pasa a través de una dirección en psuedo-register
$t0
. Por ejemplo:Funciona reemplazando la derecha de char medio (o derecha-media si la cadena tiene una longitud uniforme) con un valor nulo y luego imprime la cadena desde la dirección de memoria inicial original.
Salida:
fuente
Haskell, 27 bytes
Versión de Pointfree de
que también es de 27 bytes.
fuente
MATL ,
76 bytesPruébalo en línea!
Explicación
fuente
end
, y los dos puntos entre los elementos de la matriz están implícitosJalea , 4 bytes
Pruébalo en línea!
Explicación
fuente
V , 12 bytes
Dos soluciones completamente diferentes, ambas de 12 bytes.
Pruébalo en línea!
Pruébalo en línea!
fuente
Brachylog , 4 bytes
Pruébalo en línea!
Explicación
Si la entrada tiene una longitud impar, la segunda mitad generada por
@2
es la más larga, es la que deberíamos devolver (después de revertirla).fuente
Dyalog APL , 9 bytes
⊢
el argumento↑⍨
truncado en2÷⍨
medio de1+
uno más≢
la longitudTryAPL en línea!
fuente
Perl, 15 bytes
Incluye +2 para
-lp
Dar cadena de entrada en STDIN:
depal.pl
:No
-l
es realmente necesario si ingresa el palíndromo sin una nueva línea final, pero lo incluí para ser justo con las otras soluciones de Perl que lo usan.fuente
Java 7, 57 bytes
fuente
}
(por lo que son 57 bytes).TI-Basic, 14 bytes
Función estándar. Devuelve la cadena del índice 1 al índice (longitud / 2 + 1/2).
fuente
Lenguaje GameMaker, 59 bytes
fuente
PHP, 40 bytes
strlen($a)/2
se convierte en int, con la entrada siempre con una longitud impar, es+1
suficiente para redondear.42 bytes para cualquier longitud:
para longitud desconocida,
(1+strlen)/2
se lanza a int, redondeandostrlen/2
.fuente
Dip, 8 bytes
Explicación:
Esto probablemente podría mejorarse mucho.
fuente
Perl, 23 + 2 (
-pl
bandera) =2825 bytesSin golf:
Gracias a @ardnew.
fuente
length()
cony|||c
Befunge ,
2422 bytesPruébalo en línea!
Befunge no tiene tipo de cadena o matriz, por lo que todo se hace en la pila de un carácter a la vez. El primer bucle (en la línea superior) cuenta el número de caracteres leídos (el intercambio con menos de 2 elementos en la pila produce un 0 inicial). El segundo (en la línea media) imprime caracteres mientras realiza la cuenta regresiva el doble de rápido. Como resultado, solo se imprime la última mitad de la entrada, pero LIFO, por lo que está en el orden correcto.
Gracias a Brian Gradin por una mejor versión del primer bucle.
fuente
Perl, 14 + 3 (
-lF
bandera) =1917 bytesPara 5.20.0+:
Para 5.10.0+ (19 bytes):
Sin golf:
Gracias a @simbabque.
fuente
-n
y-a
porque lo-F
hace implícitamente.Brainfuck, 20 bytes
Pruébalo en línea.
Esto ahorra un byte sobre el enfoque más directo de consumir la entrada antes de comenzar el ciclo principal:
fuente
Pyth ,
87 bytesGuardado 1 con gracias a @Steven H
No es la respuesta Pyth más corta (a la mitad), pero estoy haciendo un esfuerzo por aprender el idioma y esta es mi primera publicación que lo uso. Publicado tanto para comentarios y comentarios como cualquier cosa. También es el primer programa Pyth que realmente tengo que trabajar :)
Ahora solo necesito averiguar cómo funciona la respuesta de 4 bytes de @Maltysen :-)
fuente
c
salta la entradaQ
en2
pedazos y toma la primera pieza usandoh
(que, gracias a la implementación de chop, también tomará la letra central). En cuanto a su código, puede reemplazarlo+1
conh
el incorporado para aumentar los números.h
pista @Steven H. Hay tantos complementos que supongo que solo toma un tiempo encontrarlos a todos :)En realidad , 5 bytes
Pruébalo en línea!
-1 byte gracias a Sherlock9
Explicación:
fuente
;l½K@H
DC,
3130 bytesAhorro de 1 byte gracias a Cyoce.
Uso:
fuente
char* c
Python 2, 23 bytes
fuente
MATLAB / Octave,
20191816 bytes1 byte sin tomar prestada una idea de la respuesta de Easterly Irk (agregar en
1
lugar de.5
)2 bytes de descuento gracias a @StewieGriffin (paréntesis innecesarios)
Pruébalo en Ideone .
fuente