Défi
Étant donné deux identifiants de questions, essayez de déterminer leur similitude en consultant les réponses.
Détails
Vous recevrez deux identifiants de questions pour codegolf.stackexchange.com
; vous pouvez supposer qu'il existe des questions pour les deux ID qui ne sont pas supprimées, mais ne sont pas nécessairement ouvertes. Vous devez parcourir toutes les réponses et déterminer la distance Levenshtein minimale entre le code dans les réponses aux deux questions (à l'exclusion des réponses supprimées). Autrement dit, vous devez comparer chaque réponse de la question 1 à chaque réponse de la question 2 et déterminer la distance minimale de Levenshtein. Pour trouver le code dans une réponse, suivez la procédure suivante:
Comment trouver l'extrait de code
Un corps de texte est le code réel de la réponse s'il est en guillemets et se trouve sur sa propre ligne, ou s'il est en retrait de 4 espaces, avec une ligne vide au-dessus, sauf s'il n'y a pas de texte au-dessus.
Exemples d'extraits de code valides et non valides (avec .
comme espace) (séparés par une tonne de signes égaux)
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
========================================
S'il n'y a pas d'extraits de code valides dans la réponse, ignorez complètement la réponse. Notez que vous ne devez prendre que le premier bloc de code.
Spécifications finales
Les deux ID de question peuvent être saisis dans n'importe quel format raisonnable pour 2 entiers. La sortie doit être la plus petite distance Levenshtein entre deux réponses valides de l'un ou l'autre défi. S'il n'y a pas de réponses «valides» pour l'un des défis ou les deux, sortez -1
.
Cas de test
Pour les défis 115715
(Embedded Hexagons) et 116616
(Embedded Triangles) tous deux par le camarade SparklePony, les deux réponses au charbon (toutes deux par KritixiLithos) avaient une distance Levenshtein de 23, qui était la plus petite. Ainsi, votre sortie pour 115715, 116616
serait 23
.
Éditer
Vous pouvez supposer que la question a au plus 100 réponses en raison d'une restriction de taille de page API. Vous ne devez pas ignorer les backticks dans les blocs de code, uniquement si le bloc de code lui-même est créé à l'aide de backticks et non sur sa propre ligne.
Éditer
J'ai mis fin à la période de prime tôt parce que j'ai demandé à un mod d'obtenir une suspension d'une semaine et je ne voulais pas que la prime soit automatiquement attribuée à la réponse ayant obtenu le score le plus élevé (qui se trouve être la plus longue). Si une nouvelle soumission arrive ou si une soumission est suffisamment lue pour devenir inférieure à 532 octets avant la fin réelle de la période de prime (UTC 00:00 le 1er juin), je vous donnerai une prime pour rester fidèle à ma promesse, après la suspension expire. Si je me souviens bien, je dois doubler la période de prime la prochaine fois, donc si vous obtenez une réponse, vous pourriez obtenir +200 :)