ACTUALIZACIÓN : ¡la presentación Pyth de isaacg es la ganadora!
Muchos de ustedes deben haber escuchado que hay una versión más fresca de JavaScript en la ciudad (lea ES6) que tiene un método String.prototype.repeat
para que puedan hacer
"Hello, World!".repeat(3)
y obten
"Hello, World!Hello, World!Hello, World!"
como la salida
Su trabajo es escribir una función o un programa en un idioma de su elección que detecte si una cadena se ha transformado.
es decir, la cadena de entrada se puede representar como una n
repetición de tiempos exactos de una cadena más pequeña. La salida (como la declaración de retorno de la función o STDOUT) debe ser veraz si la cadena puede ser o falsa si la cadena no se puede representar como una repetición de una cadena más pequeña.
Alguna entrada de muestra:
"asdfasdfasdf" // true
"asdfasdfa" // false
"ĴĴĴĴĴĴĴĴĴ" // true
"ĴĴĴ123ĴĴĴ123" // true
"abcdefgh" // false
Tenga en cuenta que la última entrada es falsa, por lo tanto, n
debe ser mayor que1
Reglas completas
- Escriba una función / programa en cualquier idioma para ingresar (mediante argumento de función / línea de comando args / STDIN) una cadena
- Devuelve / Imprime un valor verdadero si la cadena dada se forma a través de una repetición exacta de una cadena más pequeña, repitiéndose al menos dos veces.
- El tamaño máximo de la cadena de entrada es idealmente Infinito
- La cadena puede tener todos los caracteres ASCII posibles
- Este es un código de golf por lo que gana el código más pequeño en caracteres.