O que faz a pergunta ideal? Talvez seja apenas a abstração de um pensamento profundo e a inicialização de um sonho, uma esperança, um pensamento, um (… 5.024,2 caracteres omitidos ). Portanto, proponho que encontremos esse fator para quantificar perguntas. Proponho também que esse fator seja chamado Q F , ou o fator Q. Eu determino o fator Q de uma pergunta da seguinte forma:
(Lembre-se disso .)
Objetivo Dado um número como entrada, determine o fator Q da respectiva pergunta no PPCG.SE. Se a pergunta não existir, basta imprimir ;-;
(o emoticon chorando).
Tome, por exemplo ,. ( esta pergunta ):
Os votos líquidos, neste caso, significa .
views = 23435
net votes = 33
edits = 6
answers = 30, answers^2 = 900
comments = 19
charsIOPN = "Joe Z.".length = 6
Então:
r_F = 6 / 6 = 1
Q_F = r_F * (23435 * 33 + 6) / (900 - 19)
= 1 * 773361 / 881
~ 877.821793
Por favor, forneça pelo menos 2 algarismos significativos sobre Q F .
Este é um código de golfe , portanto o programa mais curto em bytes vence.
Nota: inclua três exemplos de seu programa em execução, um dos quais deve ser esta pergunta. Os outros dois são seus para decidir. (Essa é apenas uma verificação de confirmação.) Informe também o horário em que você inseriu a consulta.
Respostas:
Julia,
411382367355353 bytesÉ bastante longo, mas estou muito satisfeito que funcione!
Isso cria uma função sem nome que recebe um número inteiro como entrada e retorna um número flutuante.
Requer o
Requests
pacote, que pode ser instalado usandoPkg.add("Requests")
. Esse pacote fornece métodosBase.get()
para o envio de solicitações HTTP. Também importa oJSON
pacote (do qual depende, para que não precise ser instalado separadamente) que usamos para analisar a saída JSON na resposta.Ungolfed:
Obrigado a Dennis e Martin Büttner pela ajuda no golfe!
fonte
f=n->...
e enviarf(16327)
no REPL ouprintln(f(16327))
se estiver executando a partir de um.jl
arquivo. Ele funciona no JuliaBox (requer uma conta do Google) com o Julia 0.4.0-rc2, mas emite avisos ao pré-compilar oRequests
módulo.Mathematica 10, 381 bytes
Apenas três consultas à API e muita indexação, na verdade. A parte mais difícil foi tentar entender como obter
edits
os dados disponíveisrevisions
, espero que eu tenha entendido direito.fonte
StringTemplate
argumento é inválido, imprime vários erros e não retorna um resultado.StringTemplate
antes das 10, tanto quanto eu sei. Você pode substituir essa peçaa=Function["http://api.stackexchange.com/"<>#1<>ToString[#2]<>#3<>"?site=codegolf"];
e ver se funciona.Python 2, 392 bytes
Bem, eu tentei.
Lógica muito semelhante à resposta de Julia de Alex . Gostaria de percorrer isso para ver qual pergunta é a mais ideal, mas prefiro não ligar continuamente para a API por horas a fio.
fonte
Groovy,
459457 bytesMuito parecido com o resto das respostas.
Economizou 2 bytes graças a Cᴏɴᴏʀ O'Bʀɪᴇɴ!
Ungolfed:
fonte