Tarefa: decifre o código codificado para multiplicar a raiz quadrada de um número inteiro n pelo quadrado dele!
Você deve postar um comentário no tópico da polícia com um link para sua fonte de trabalho, mencionando claramente que você o violou . No título da sua resposta, você deve incluir o link para a resposta original.
Regras:
- Você só pode alterar a ordem dos caracteres na fonte original.
- Respostas seguras não podem mais ser quebradas.
- As outras regras mencionadas no tópico da polícia
- Por favor, edite a resposta que você descobriu
VENCEDOR: Emigna - 10 envios (problemas para contar)
Menções honrosas: Notjagan, Plannapus, TEHTMI
code-golf
number
arithmetic
cops-and-robbers
Mr. Xcoder
fonte
fonte
JavaScript (ES7), Neil
A parte difícil, é claro, foi descobrir o que fazer com todos os personagens extras. (E também não postando esta solução no segmento errado, como fiz acidentalmente no início. Oopsie ...)
fonte
_26_=>
define uma função anônima usando um parâmetro chamado_26_
(variáveis podem começar com um sublinhado, mas não um número). Em seguida, o restante está apenas usando**
comoMath.pow()
para elevar a entrada à potência de 2,5 (6,25 potência 0,5)._26_
era algo específico do ES7. Não sabia que variáveis também podem estar nesta forma! (Eu nunca vi uma variável sem alfabeto). Essa foi uma abordagem muito inteligente da @Neil. E você também foi muito esperto em quebrá-lo! Tenha seu merecido +1! :)Python, 15 bytes, Sr. Xcoder
Bem simples. Apenas pega
x
e aumenta para o2.5
poder th.fonte
OCaml, 13 bytes, shooqie
Experimente online!
fonte
C ++ (gcc) , 100 bytes, Sr. Xcoder
Experimente online!
fonte
using
e apenas fazendoint main(){float n;std::cin>>n;std::cout<<pow(n,2.5);}
Haskell, Leo
Uma função sem ponto chamada
x
. Uso:x 4
->32.0
fonte
Inform 7 , corvus_192
Legal, uma entrada do Inform7. :) Eu apenas tive que tentar este.
Tenho certeza de que esta é a solução pretendida:
Observe que esta solução só funciona se compilada com o back-end Glulx, devido ao uso da
real square root of
função.Entre, aspas duplas e colchetes são realmente desnecessários; só
say n * n * real square root of n
iria funcionar tão bem. Os períodos no final dos comandos também poderiam ser omitidos; ou podemos manter o primeiro período e nos livrar das novas linhas. Outras partes do código que poderíamos aparar incluem o artigo "a" antes da "sala" e os espaços antes dos parênteses e depois dos dois pontos. Felizmente, como temos um par de colchetes sobressalentes, sempre podemos usá-los para comentar todos esses caracteres extras. ;) Portanto, também é uma solução válida:Para testar essa solução interativamente, é conveniente anexar algo como o seguinte equipamento de teste ao código:
Após compilar e executar o programa, você pode digitar, por exemplo,
f 4. f 6. f 9. f 25
no>
prompt e receber algo como a seguinte saída:BTW, acabei de notar que o Inform (ou presumivelmente, o Glulx) arredonda a última casa decimal do
f 6
erro: o valor correto está muito mais próximo de 88.18163 do que de 88.18164. Felizmente, acho que isso não afeta a correção das soluções, principalmente porque o desafio especificava "qualquer mecanismo de arredondamento de sua escolha". :)fonte
apt-get install gnome-inform7
.Mathematica, Greg Martin
Obrigado por deixar o material de arredondamento intacto!
Explicação:
#(#)#^(1/(1+1))&@y
faz o trabalho principal de multiplicary
ao quadrado, akay(y)
, ey
raiz quadrada dey^(1/(1+1))
. O#&@@@{1^(1),-1}
bit é apenas lixo para usar as outras letras e#&@@
escolhe o bit útil do lixo.fonte
MATL , 12 bytes, Luis Mendo
Calcule 10/4 = 2,5 com 4 provenientes do comprimento da string. Use isso como um expoente. P é um não-op aqui.
fonte
Python 3, 44 bytes, Kyle Gullion
Aqueles
*
eram bastante enganadores. Muito esperto!Devido ao conjunto de caracteres bastante limitado, ficaria muito surpreso se houvesse outras soluções válidas além de renomear trivialmente ou reordenar argumentos.
fonte
R, Steadybox
parece ser um anagrama de
funny(p1)-tio(^*^)/pc(2)<p2;
fonte
Python 2, 60 bytes, Anthony Pham
Baseado no descarte de caracteres através da divisão flutuante do Python 2 (o padrão
/
entre números inteiros).fonte
C, 50 bytes, Dave
Experimente online!
Isso requer
-lm
sinalizador de compilador, mas não sei como seria possível resolver isso sem ele.fonte
\uad2f
na minha). Bem feito; Eu pensei que tinha deixado arenques suficientes lá para manter as pessoas ocupadas por muito mais tempo! Além disso, a-lm
bandeira não era necessária para eu usar o Clang (eu teria mencionado isso!), Mas você está certo de que, estritamente falando, é necessário.R, Solha
Este é um crack da solução de 33 bytes do @Flounderer
Uso:
fonte
sin(pi)
, mas infelizmente funciona! +1scan()^(-floor(-sin(pi)*2e17)/10)
RProgN 2, ATaco
Aparentemente, o StackExchange precisa de caracteres extras, então aqui está.
fonte
]š\2^*
, mas ambos funcionam da mesma maneira.HODOR, 198, esse cara
Explicação:
nota: tive que fazer algumas modificações no interpretador get para executar na minha máquina (a que você postou não parece aceitar minúsculas h, entre outras coisas)
Além disso, parece que eu não tenho representante suficiente para comentar, por isso, se alguém pudesse informar @This Guy, ficaria agradecido
Eu acho que isso corrigiu o erro, o código agora começa com Walder em vez de Wylis, que adiciona o byte extra
fonte
C #, 172 bytes, raznagul
A parte mais difícil foi descobrir o que fazer com todas as sobras.
fonte
EXCEL, 26 bytes pajonk
A1 como IP2 de entrada contém uma segunda entrada com um erro # N / D, neste caso, ISNA (IP2) pertence a 1
Por um adicional
()
, podemos fazer issofonte
=SQRT(A1)*A1^2/SIN(PI()/2)
Se você definir o erro #NA através da formatação ou outra coisa, eu o veria como uma segunda entrada adicional. SQRT e ISNA são as únicas duas funções que fazem um pouco de sentido. Mas, por favor, pergunte ao homem que desenvolveu a perguntaPython 3.6, 64 bytes, Sr. Xcoder
Talvez não o que foi planejado, mas funciona;)
Ainda não há representante suficiente para comentar a resposta da polícia, desculpe ... Gostaria que alguém pudesse fazer isso por mim, obrigado!
fonte
from math import pi as pp0012223467899;f=lambda x:x**2.5*1*(1)/1
só para ver que fui derrotado. Adicionei um link para este post no tópico da polícia para você.Röda , 28 bytes, fergusq
fonte
Python 2.7, Koishore Roy
fonte
y=x=e=s
, ambos funcionam :)) Bom trabalho de qualquer maneira!R, Solha
Esta é uma rachadura da solução de 31 bytes do Flounderer:
Ok, isso foi difícil. Ele cria uma função chamada
`[.`
. O argumento para a função é chamado`]`
que é elevado à potência 2,5 usando o 9º elemento da série temporal internalh
("uma série temporal regular que fornece o hormônio luteinizante em amostras de sangue a intervalos de 10 minutos de uma fêmea humana, 48 amostras"). . "que é usado como exemplo em um dos pacotes base de R).lh[9]
está aqui em cima substituído por seu equivalente`[`(lh, 9)
. Desfocada pela substituiçãof
do nome da função e do nomen
do argumento, a função se tornaf=function(n)n^lh[9]
.Uso:
fonte
Python 2, 44 bytes, Anthony Pham
Pega a entrada de raw_input, converte em int e aumenta em potência 2.5
fonte
JavaScript, fəˈnɛtɪk
Obtém 5/2 a 5 vezes 2 à primeira potência negativa, onde 5 e 1 foram recebidos do comprimento das seqüências de caracteres. Tomou o caminho mais fácil em um sentido, comentando os caracteres estranhos.
fonte
C #, 112 bytes, Jan Ivan
fonte
05AB1E , 47 bytes, Okx
Experimente online!
fonte
Bola de fogo , 8 bytes, Okx
Explicação:
Não tenho certeza se funciona. Atualmente, não tenho java no meu laptop. :(
fonte
Z1
em1Z
.Haskell , 64 bytes, @nimi
Experimente online! Essa foi divertida. A primeira vez
product.(<$>(($succ(cos$0))<$>[id,recip])).(**)
que descobri qual se comporta corretamente e que tinha que caberflip flip <$> () $ id .
em algum lugar nela.fonte
R, caixa fixa
Uso:
fonte
a=function(s)s**2*s**(0.125*2*2)
05AB1E , 22 bytes, P. Knops
Experimente online!
Explicação
O restante das operações nunca é executado.
Poderíamos ter feito isso sem o resultado
q
, tendo?
após o cálculo e escapado do sinal de igualdade, por exemplo, com'=
.fonte