Desafio
Dadas duas IDs de perguntas, tente descobrir o quão semelhantes elas são olhando as respostas.
Detalhes
Você receberá dois IDs de perguntas para codegolf.stackexchange.com
; você pode assumir que existem perguntas para os dois IDs que não foram excluídos, mas não necessariamente abertos. Você deve examinar todas as respostas e determinar a distância mínima de Levenshtein entre o código nas respostas às duas perguntas (sem incluir as respostas excluídas). Ou seja, você deve comparar todas as respostas da pergunta 1 com todas as respostas da questão 2 e determinar a distância mínima de Levenshtein. Para encontrar o código em uma resposta, assuma o seguinte procedimento:
Como encontrar o trecho de código
Um corpo de texto é o código real da resposta se estiver em backticks e estiver em sua própria linha, ou se for recuado com 4 espaços, com uma linha vazia acima, a menos que não haja texto acima.
Exemplos de trechos de código válidos e não válidos (com .
um espaço) (separados por uma tonelada de sinais de igual)
This is `not a valid code snippet because it is not on its own line`
========================================
This is:
`A valid code snippet`
========================================
This is
....not a valid code snippet because there's no spacing line above
========================================
This is
....A valid code snippet because there's a spacing line above
========================================
....Valid code snippet because there's no other text
========================================
Se não houver trechos de código válidos na resposta, ignore-a completamente. Observe que você só deve pegar o primeiro código de bloqueio.
Especificações finais
Os dois IDs de perguntas podem ser inseridos em qualquer formato razoável para 2 números inteiros. A saída deve ser a menor distância de Levenshtein entre as duas respostas válidas de qualquer desafio. Se não houver respostas "válidas" para um ou ambos os desafios, produza -1
.
Caso de teste
Para o desafio 115715
(Embedded Hexagons) e 116616
(Embedded Triangles), ambos do camarada SparklePony, as duas respostas de carvão (ambas da KritixiLithos) tinham uma distância de Levenshtein de 23, a menor. Assim, sua saída para 115715, 116616
seria 23
.
Editar
Você pode supor que a pergunta tenha no máximo 100 respostas devido a uma restrição de tamanho de página da API. Você não deve ignorar backticks em blocos de código, apenas se o próprio bloco de código for criado usando backticks e não em sua própria linha.
Editar
Eu encerrei o período de recompensa mais cedo porque fiz um pedido a um mod para obter uma suspensão de uma semana e não queria que a recompensa fosse automaticamente atribuída à resposta com a pontuação mais alta (que é a mais longa). Se uma nova submissão for recebida ou uma submissão for golfed o suficiente para se tornar menor que 532 bytes antes do final do período de recompensa (UTC 00:00 em 1º de junho), darei a ela uma recompensa para permanecer fiel à minha promessa, depois a suspensão expira. Se bem me lembro, preciso dobrar o período de recompensa na próxima vez. Se você receber uma resposta, poderá receber +200 :)