Austin: "Quem te enviou?"
Mustafa: "Você tem que me matar!"
Austin: "Quem te enviou?"
Mustafa: "Beije minha bunda, poderes!"
Austin: "Quem te enviou?"
Mustafa: "Dr. Mal".
(...)
Mustafa: "Não suporto receber a mesma pergunta três vezes. Isso apenas me irrita".
Você deve simular um breve diálogo no espírito de Austin Powers e Mustafa . Mas a fonte de dados para toda a conversa será uma pergunta StackOverflow (fornecida como entrada de uma URL).
Regras
O nome de usuário do solicitante da pergunta será usado no lugar de "Austin". A pergunta que eles farão três vezes vem da última frase no título da pergunta (que foi forçada a terminar em um ponto de interrogação, se ainda não o fez).
O StackExchange fará o papel de "Mustafa". A resposta dada em última instância vem da primeira frase da resposta que não termina em um ponto de interrogação e será atribuída ao nome do usuário que respondeu.
Para uma pergunta se qualificar para o jogo, ela deve (a) ter uma resposta e (b) deve haver uma sequência de comentários sobre a pergunta original:
- comentar de alguém que não seja o questionador
- (qualquer número de comentários ignorados)
- comentário do questionador
- comentar de alguém que não seja o questionador
- (qualquer número de comentários ignoráveis)
- comentário do questionador
Se essa sequência não for satisfeita antes da data da resposta mais classificada , o programa deve simplesmente gerar"Oh, behave!"
As réplicas furiosas de StackExchange Mustafa vêm da primeira frase dos comentários de alguém que não seja o interlocutor que não termina com um ponto de interrogação - e garante que ele termine com um ponto de exclamação. Se não existir uma frase no comentário que não termine em um ponto de interrogação, ela será ignorada como candidata à réplica. As réplicas de comentários são atribuídas ao nome de usuário do autor.
Esclarecimentos
Retire todos os dados de resposta "@XXX" principais de um comentário.
Como o StackOverflow resume os comentários, se houver muitos deles, você provavelmente precisará usar uma segunda solicitação para obter a lista completa. Essa solicitação é do formulário
/programming//posts/NNN/comments?_=MMM
com o ID da postagem em N e o ID da pergunta em M. Consulte, por exemplo: /programming//posts/11227809/comments?_=211160Os URLs devem ser removidos para ancorar apenas o texto.
Definiremos uma "sentença" como qualquer coisa fora de um bloco de código que termine em um ponto, ponto de interrogação ou ponto de exclamação. Se uma sequência de texto não tiver uma pontuação final desse formulário, o final do texto será o final da frase; como se tivesse sido escrito com um ponto.
Se você estiver procurando por casos de teste engraçados que provavelmente se qualificam, tente usar o StackExchange Data Explorer, como Postagens com mais comentários .
... mais por vir, aposto ...
Amostras
Amostra Um
Entrada:
/programming/2283937/how-should-i-ethically-approach-user-password-storage-for-later-plaintext-retrie/
Resultado:
shanee: "Como devo abordar eticamente o armazenamento de senha de usuário para recuperação posterior de texto sem formatação?"
stefanw: "Eu acho que ele sabe que não é bom!"
shanee: "Como devo abordar eticamente o armazenamento de senha de usuário para recuperação posterior de texto sem formatação?"
Torre: "Talvez você deva perguntar como implementar uma vulnerabilidade de estouro de buffer de maneira segura!"
shanee: "Como devo abordar eticamente o armazenamento de senha de usuário para recuperação posterior de texto sem formatação?"
Michael Burr: "Pergunte por que a senha deve estar em texto sem formatação: se é para que o usuário possa recuperá-la, então, estritamente falando, você realmente não precisa recuperar a senha que definiu (eles não se lembram do que é"). de qualquer maneira), você precisa fornecer uma senha que eles possam usar ".
Amostra Dois
Entrada:
http://scifi.stackexchange.com/questions/2611/why-dont-muggle-born-wizards-use-muggle-technology-to-fight-death-eaters
Resultado:
DVK: "Por que os bruxos nascidos trouxas não usam a tecnologia trouxa para combater os Comensais da Morte?"
DampeS8N: "Isso dança no limite novamente!"
DVK: "Por que os bruxos nascidos trouxas não usam a tecnologia trouxa para combater os Comensais da Morte?"
DampeS8N: "Certo, mas este site não é sobre apontar buracos na trama!"
DVK: "Por que os bruxos nascidos trouxas não usam a tecnologia trouxa para combater os Comensais da Morte?"
Jeff: "Acredito, apesar de não ter conseguido encontrar uma referência, que JK Rowling realmente mencionou isso em um ponto."
Amostra Três
Entrada:
/programming/11227809/why-is-processing-a-sorted-array-faster-than-an-unsorted-array
Resultado:
"Oh, comporte-se!"
(O tempo de resposta mais bem avaliado é que Jun 27 '12 at 13:56
, enquanto o segundo comentário de acompanhamento da pergunta é feito no momento Jun 27 '12 at 14:52
. Portanto, não há um nexo de causalidade entre o segundo acompanhamento e a resposta. :-P)
Critérios Vencedores
Código Golf - o código mais curto vence.
fonte
Respostas:
PHP, 1282 caracteres
Embora 1282 seja enorme para um desafio de código de golfe, o desafio é bastante complexo. (E eu não sou muito bom em golfe.)
Versão ungolfed
fonte
$a=function(1,2,$a)
coisas juntas.