Selon la légende , presque tout le monde est devancé par Dennis . Sinon, ils le seront.
Maintenant, je suis curieux de savoir si je fais partie de «presque tout le monde».
Vous recevrez un lien vers une réponse au format /codegolf/[QUESTION ID]/[QUESTION NAME]/#[ANSWER ID]
.
Trouvez la longueur du code, que nous supposerons comme le dernier nombre sur la première ligne (en termes de démarque) de la réponse dans le lien.
Ensuite, recherchez les réponses de Dennis et faites de même.
Maintenant, comparez la longueur du code des réponses de Dennis et de l'entrée, et si elle est hors golf (ce qui signifie qu'une ou plusieurs réponses de Dennis sont plus courtes que celle de la réponse d'entrée), sortez une valeur véridique, et sinon, une valeur fausse.
S'il n'y a pas de réponse appartenant à Dennis sur la même question que la réponse, émettez une valeur fausse.
Exemples
Règles
- Vous pouvez utiliser n'importe quelle forme de valeur véridique / fausse.
- La question de la réponse qui vous sera donnée sera toujours le code-golf .
La question peut ne pas avoir de réponse de Dennis, mais la réponse entrée n'appartiendra jamais à Dennis.
Vous pouvez supposer qu'il y a toujours un nombre sur la première ligne de la réponse.
la source
Réponses:
Python 3.6 + requêtes + bs4 -
363358 octetsImprime
True
ouFalse
.Remarque: ne fonctionne pas actuellement sur le deuxième lien en raison du code HTML non valide produit par cette réponse (les balises
em
etstrong
sont terminées dans le mauvais ordre à la fin de la deuxième ligne, et l'analyseur manque le bloc de nom d'utilisateur). Essayez-le sur ce lien .Utilisation de l'API -
401380 octetsNotez que cela échoue également sur le deuxième lien, mais parce qu'une réponse a commencé par
This may be foul play.
au lieu de l'en-tête ...la source
filter=withbody
trouve dans votre demande GET afin d'obtenir le corps de la réponse pour récupérer le nombre d'octetsa
deux fois (une fois pour définir l'ID de réponse et une autre lors de l'itérationr["items"]
, ce qui conduirait à un comportement incorrect. De plus, vous n'avez pas besoin de définir lapagesize
(elle sera par défaut de 30).c=int(re.search(r'(\d+) bytes').group(1))
Devrait vous donner un une récupération plus précise des bytecount et est plus courte, et si elle échoue toujours,(\d+)\s*bytes
fait l'affaire mais est un peu plus longue. Enfin,i=r["has_more"]and i+1
est plus courte que votre conditionnel ternaire.Ruby,
314315308 + 20 =334335328 octetsUtilise les drapeaux
-n -rjson -ropen-uri
. +1 octet de correction d'un bug mineur.-7 octets en découvrant la
open-uri
bibliothèque par défaut de Ruby.la source