Steve Ballmer es el ex CEO de Microsoft y, en un artículo reciente , afirmó que "todavía no sabe qué hizo mal con los dispositivos móviles".
Como señalaba el boletín de CodeProject , "el título de ese artículo podría terminar en tantos puntos y seguir siendo exacto".
Sin entrada, salida lo siguiente:
Steve Ballmer still does not know.
Steve Ballmer still does not know what he did.
Steve Ballmer still does not know what he did wrong.
Steve Ballmer still does not know what he did wrong with mobile.
Esto se debe generar exactamente como se muestra y debe ser el único resultado de su programa. Puede incluir una nueva línea final.
Este es el código de golf, por lo que gana menos bytes en cada idioma
code-golf
string
kolmogorov-complexity
Skidsdev
fuente
fuente
developers developers ...
while 1 {puts developers}
- demo1"developers "[!@11 1>]
: Pyes developers
Respuestas:
Python 3 ,
100999997 bytes-1 byte gracias a ovs
-1 byte gracias a Jonathan Allan
-1 byte gracias a Dennis
Pruébalo en línea!
fuente
Haskell, 96 bytes
Pruébalo en línea!
scanl
es comofoldl
(o reducir como se llama en otros idiomas), excepto que devuelve una lista de todos los resultados intermedios en lugar de solo el final. Cada resultado intermedio se agrega con".\n"
y todos ellos se concatenan en una sola cadena.fuente
05AB1E ,
50494544 bytes4 bytes guardados con la inspiración de la respuesta Java de Kevin
Pruébalo en línea!
Explicación
fuente
Ballmer
?mer
me
pero desafortunadamente eso no ahorraría ningún byte: /Retina ,
8275 bytesGracias a Neil por guardar 7 bytes.
El recuento de bytes asume la codificación ISO 8859-1.
Pruébalo en línea!
Explicación
Inicialice la cadena de trabajo al título completo.
Como señaló Neil, los tres truncamientos se hacen antes de que una palabra comience
w
, y no hay otras palabras que comiencen conw
. Entonces hacemos coincidir un espacio seguido de aw
para encontrar los puntos de truncamiento. En estos puntos, insertamos lo siguiente:.¶
, un punto y un salto de línea para truncar la oración y comenzar una nueva.$`
, la cadena completa frente al partido, de modo que la siguiente oración comience desde el principio.$&
, el espacio yw
otra vez, para que también sean parte de la siguiente oración.No es necesario que coincidamos
mobile
explícitamente, porque eso simplemente será lo que quede en el tercer partido.fuente
.¶$`$&
.PHP,
1049594 bytesfuente
/// , 88 bytes
¡8 bytes guardados por @MartinEnder!
Pruébalo en línea!
fuente
4
completo: tio.run/##DcLRDcMgDAXA/…05AB1E , 46 bytes
Pruébalo en línea!
fuente
Java 8,
127126 bytes-1 byte gracias a @KonstantinCh .
Pruébalo aquí
fuente
string
no puede estarvar
en tu C # lambda?()=>{var t="Steve Ballmer still does not know";return t+".\n"+(t+=" what he did")+".\n"+(t+=" wrong")+".\n"+t+" with mobile"+".";};
lamentablemente es tres bytes más largo."+d
al final."
para guardar un byte ya que el salto de línea final es opcional.C (gcc) , 112 bytes
Pruébalo en línea!
fuente
Jalea ,
5246 bytesLos créditos para
ṬċḌ)⁹œḃṣ⁷Ṅḋ%W3Œƭ;ḷẓ
ir a @EriktheOutgolfer, quien lo usó en su respuesta .Pruébalo en línea!
Cómo funciona
La mayor parte del trabajo se realiza mediante la compresión del diccionario de Jelly aquí.
codifica
no
|
indica los límites entre las palabras que, cuando descabellada del diccionario y las cuerdas que fueron codificados carácter por carácter (mer
,es
yt
).Del mismo modo,
£Ṿ⁴'Þḣ~ẉ
codificawhat| he| did
(sorprendentemente,he
hace no vienen del diccionario),¥Ị)
codificawrong
, yṠ8gÐ/
codificawith| mobile
.por lo tanto produce el conjunto de cadenas
;\
se reduce acumulativamente por concatenación, construyendo las frases en cada línea.Finalmente,
p”.
calcula el producto cartesiano de estas frases y el carácter de punto, yY
separa las oraciones resultantes por saltos de línea.fuente
JavaScript (ES6), 102 bytes
Intentalo
fuente
C (gcc) ,
124122 bytesPruébalo en línea!
fuente
A
yB
, y las cadenas que los definen.Retina ,
9586 bytesPruébalo en línea! Editar: ahorró 9 bytes al cambiar de la salida de partes de la cadena completa a construir la cadena en pedazos. El
:`
es necesario en las primeras tres etapas para que salgan.fuente
w
ye
, luego eliminar todo entre elwr
ye
, luegowi
ye
. No es súper golf debido a la nueva línea de Retina, pero definitivamente es genialC #,
158128120114 bytesGuardado 30 bytes gracias a @KevinCruijssen.
Guardado 6 bytes gracias a @Shaggy.
Versión con subcadena de 120 bytes:
Versión prestada de @KevinCruijssen para 128 bytes:
Versión con bucle de 158 bytes:
Enfoque simple usando declaraciones ternarias en un bucle para agregar las nuevas partes a la cadena cada vez.
fuente
C# >= 6
ya que las versiones anteriores no tienen cadenas interpoladasBash,
111109107 bytesPruébalo en línea!
fuente
Vim, 79 pulsaciones de teclas
<C-x><C-l>
autocompleta con la línea anterior. Alternativamente, puede reemplazar cada aparición de<CR><C-x><C-l>
con<Esc>o<C-a>
fuente
CJam , 79 bytes
Pruébalo en línea!
fuente
Ruby, 94 bytes
Itera a través de los 4 caracteres en la primera cadena, convirtiendo cada uno a su valor ascii
n
y sacando los primerosn
caracteres de la segunda cadena cada vez. Realmente no importa cuál sea el último carácter de la primera cadena, siempre que su valor ascii sea igual o mayor que la longitud de la segunda cadena.fuente
Fisión,
299291269 bytesPruébalo en línea!
¡Finalmente un lenguaje 2D que entiendo!
Explicación
El programa genera un átomo con 1 masa y 0 energía (un
1:0
átomo) en laR
línea 3, y comienza a moverse hacia la derecha."Steve Ballmer still does not know"
Imprime cada personaje.%
mueve el átomo hacia arriba si tiene 0 de energía, o disminuye su energía y lo mueve hacia abajo.]
mueve el átomo a la izquierda,$
incrementa la energía del átomo,W
mueve el átomo hacia arriba.Una vez que el átomo está en la fila superior, se mueve hacia la izquierda, hasta que alcanza
"."
, que imprime un puntoN
, que imprime una nueva línea yM
, finalmente , que mueve el átomo hacia abajoR
nuevamente, que posteriormente mueve el átomo hacia la derecha .En cada bucle, la energía del átomo es una más alta, lo que significa que pasará por una más
%
. Después del cuarto ciclo, llega;
al final de la tercera línea, que destruye el átomo. El programa termina una vez que se destruyen todos los átomos.fuente
Japt ,
706865616059 bytesContiene algunos caracteres que no se mostrarán aquí; siga el siguiente enlace para ver el código completo.
Pruébalo en línea
34 bytes guardados gracias a ETH , más otros 4 con algunas indicaciones.Explicación
Todo entre los 2 backticks es una cadena comprimida de lo siguiente:
fuente
[`Sve Ba¥´r Ð]l º not know`` Ø ¹d`` Ùg`` ØP ¶ßè.`]m@P+=X}
, luego un par de bytes más que implican eliminar el[
y]
(te dejaré averiguarlo).£P±X +'.}R
al finalJalea , 49 bytes
Pruébalo en línea!
fuente
PHP, 116 bytes
";
Pruébalo en línea!
fuente
SOGL , 42 bytes
Explicación:
fuente
data/p.sogl
pegue el código. Luego, ejecutar el código de procesamiento debería ejecutarlo y la salida debería estar en la consola./processing-java --sketch=../SOGL/P5Parser --run p.sogl ""
p.sogl
. si no hay nada en STDOUT oP5Parser/output.txt
, no lo sé.Sed, 96
Pruébalo en línea .
Entrada de nueva línea implícita dada, según esta meta-pregunta .
fuente
\.
sGo ,
140127 bytesPruébalo en línea!
fuente
Nim , 100 bytes
aquí lo mismo en código más legible:
El lenguaje tiene segmentación de cadenas y límites superiores inclusivos. El resto debería explicarse si conoce la programación.
fuente
Carbón ,
7169 bytesPruébalo en línea! El enlace es a una versión detallada del código, con algunos separadores omitidos porque el desverbosificador no puede hacerlo automáticamente. Esto es básicamente un puerto de la respuesta de @ KevinCruijssen.
fuente
> <> , 135 bytes
Básicamente, esto pasa por la cadena, imprime y luego reemplaza el fullstop y los condicionales con espacios para seguir moviéndose a lo largo del código.
Puede ser mejor visualizarlo usando el siguiente enlace> <> estanque;
> <> estanque!
Pruébalo en línea!
fuente
know
deletrea al revéswonk
.Mathematica,
108104bytesPruébalo en línea!
-4 bytes de Martin
fuente
> <> , 126 bytes
fuente