Austin: "¿Quién te envió?"
Mustafa: "¡Tienes que matarme!"
Austin: "¿Quién te envió?"
Mustafa: "¡Bésame el culo, Powers!"
Austin: "¿Quién te envió?"
Mustafa: "Dr. Evil".
(...)
Mustafa: "No soporto que me hagan la misma pregunta tres veces. Simplemente me irrita".
Debes simular un breve diálogo en el espíritu de Austin Powers y Mustafa . Pero la fuente de datos para toda la conversación será una pregunta de StackOverflow (proporcionada como entrada desde una URL).
Reglas
El nombre de usuario del autor de la pregunta se utilizará en lugar de "Austin". La pregunta que harán tres veces proviene de la última oración en el título de la pregunta (que se ha visto obligado a terminar en un signo de interrogación si aún no lo hizo).
StackExchange interpretará el papel de "Mustafa". La respuesta dada en última instancia proviene de la primera oración de la respuesta que no termina en un signo de interrogación, y se atribuirá al nombre del usuario que respondió.
Para que una pregunta califique para el juego, debe (a) tener una respuesta y (b) debe haber una secuencia de comentarios sobre la pregunta original que dice:
- comentario de alguien que no sea interlocutor
- (cualquier número de comentarios omitidos)
- comentario del interlocutor
- comentario de alguien que no sea interlocutor
- (cualquier número de comentarios que se pueden omitir)
- comentario del interlocutor
Si esta secuencia no se satisface antes de la fecha de la respuesta mejor clasificada , el programa simplemente debería generar"Oh, behave!"
Las respuestas enfadadas de StackExchange Mustafa provienen de la primera oración de los comentarios de alguien que no sea el interrogador que no termina con un signo de interrogación, y se asegura de que termine con un signo de exclamación. Si no existe una oración en el comentario que no termine en un signo de interrogación, se omite como candidato para la réplica. Las réplicas de comentarios se atribuyen al nombre de usuario del autor.
Aclaraciones
Elimine los datos de respuesta "@XXX" de un comentario.
Debido a que StackOverflow resume los comentarios si hay muchos de ellos, probablemente tendrá que usar una segunda solicitud para obtener la lista completa. Esa solicitud es del formulario
/programming//posts/NNN/comments?_=MMM
con el ID de la publicación en N y el ID de la pregunta en M. Consulte, por ejemplo: /programming//posts/11227809/comments?_=211160Las URL deben eliminarse solo para anclar texto.
Definiremos una "oración" como cualquier cosa fuera de un bloque de código que termine en un punto, un signo de interrogación o un signo de exclamación. Si una secuencia de texto no tiene una puntuación final de esta forma, entonces el final del texto es el final de la oración; como si estuviera escrito con un punto.
Si está buscando casos de prueba divertidos que probablemente califiquen, puede intentar usar StackExchange Data Explorer, como Publicaciones con la mayoría de los comentarios .
... más por venir, apostaré ...
Muestras
Muestra uno
Entrada:
/programming/2283937/how-should-i-ethically-approach-user-password-storage-for-later-plaintext-retrie/
Salida:
shanee: "¿Cómo debería abordar éticamente el almacenamiento de contraseñas de usuario para la recuperación posterior de texto sin formato?"
stefanw: "¡Creo que él sabe que no es bueno!"
shanee: "¿Cómo debería abordar éticamente el almacenamiento de contraseñas de usuario para la recuperación posterior de texto sin formato?"
Rook: "¡Quizás deberías preguntar cómo puedes implementar una vulnerabilidad de desbordamiento de búfer de forma segura!"
shanee: "¿Cómo debería abordar éticamente el almacenamiento de contraseñas de usuario para la recuperación posterior de texto sin formato?"
Michael Burr: "Pregunte por qué se requiere que la contraseña esté en texto sin formato: si es para que el usuario pueda recuperar la contraseña, entonces, estrictamente hablando, realmente no necesita recuperar la contraseña que estableció (no recuerda cuál es) de todos modos), debes poder darles una contraseña que puedan usar ".
Muestra dos
Entrada:
http://scifi.stackexchange.com/questions/2611/why-dont-muggle-born-wizards-use-muggle-technology-to-fight-death-eaters
Salida:
DVK: "¿Por qué los magos nacidos de muggles no usan la tecnología muggle para luchar contra los mortífagos?"
DampeS8N: "¡Esto baila de nuevo en el borde!"
DVK: "¿Por qué los magos nacidos de muggles no usan la tecnología muggle para luchar contra los mortífagos?"
DampeS8N: "Correcto, ¡pero este sitio no se trata de señalar agujeros en la trama!"
DVK: "¿Por qué los magos nacidos de muggles no usan la tecnología muggle para luchar contra los mortífagos?"
Jeff: "Creo, aunque no he podido encontrar una referencia, que JK Rowling realmente mencionó esto en un momento".
Muestra tres
Entrada:
/programming/11227809/why-is-processing-a-sorted-array-faster-than-an-unsorted-array
Salida:
"¡Oh, compórtate!"
(El tiempo de respuesta mejor calificado es Jun 27 '12 at 13:56
, mientras que el segundo comentario de seguimiento sobre la pregunta del interrogador es a tiempo Jun 27 '12 at 14:52
. Por lo tanto, no hay un vínculo causal entre el segundo seguimiento y la respuesta. :-P)
Criterios ganadores
Code Golf: el código más corto gana.
fuente
Respuestas:
PHP, 1282 caracteres
Si bien 1282 es bastante grande para un desafío de golf de código, el desafío es bastante complejo. (Y no soy muy bueno en el golf).
Versión sin golf
fuente
$a=function(1,2,$a)
cosas juntas.