Voleurs - racine carrée fois carré

18

Tâche: Crackez le code brouillé pour multiplier la racine carrée d'un entier n par le carré de celui-ci!

Vous devez publier un commentaire dans le fil des flics avec un lien vers votre source de travail, en mentionnant clairement que vous l'avez craqué . Dans le titre de votre réponse, vous devez inclure le lien vers la réponse d'origine.

Règles:

  • Vous ne pouvez modifier l'ordre des caractères que dans la source d'origine.
  • Les réponses sûres ne peuvent plus être déchiffrées.
  • Les autres règles mentionnées dans le fil des flics
  • Veuillez modifier la réponse que vous avez craquée

VAINQUEUR: Emigna - 10 submissons (eu du mal à compter)

Mentions honorables: Notjagan, Plannapus, TEHTMI

M. Xcoder
la source

Réponses:

3

NON , 41 octets, This Guy

NOOOOOO?NOOOOOOOOOOO!nnOOOOO
NOOOOOOOO?no
Emigna
la source
Vraiment? Eh bien au moins j'ai fait connaître ma langue.
caird coinheringaahing
@ThisGuy: Vous avez créé des langages amusants :) Pas terriblement utile en général cependant;)
Emigna
Regardez le 2ème paragraphe
caird coinheringaahing
9

JavaScript (ES7), Neil

_26_=>_26_**6.25**.5

La partie difficile, bien sûr, était de savoir quoi faire avec tous les personnages supplémentaires. (Et aussi ne pas poster cette solution dans le mauvais fil, comme je l'ai fait accidentellement au début. Oopsie ...)

Ilmari Karonen
la source
1
@SethWhite: J'ai dû utiliser tous les caractères que Neil a utilisés dans son code brouillé, sinon cela n'aurait pas été un crack valide.
Ilmari Karonen
Comment cela marche-t-il?
Arjun
@Arjun _26_=>définit une fonction anonyme prenant un paramètre appelé _26_(les variables peuvent commencer par un trait de soulignement mais pas un nombre). Ensuite, le reste utilise simplement **as Math.pow()pour élever l'entrée à la puissance de 2,5 (6,25 puissance 0,5).
Joe
Ah! Je pensais que _26_c'était quelque chose d'ES7 spécifique. Je ne savais pas que les variables peuvent aussi être sous cette forme! (Je n'ai jamais vu de variable sans alphabet). C'était une approche très intelligente de @Neil. Et vous étiez très intelligent aussi pour le casser! Ayez votre +1 bien mérité! :)
Arjun
6

Python, 15 octets, M. Xcoder

lambda x:x**2.5

Assez simple. Il suffit de le prendre xet de le porter à la 2.5puissance e.

Kritixi Lithos
la source
6

OCaml, 13 octets, shooqie

fun f->f**2.5

Essayez-le en ligne!

Dada
la source
Je le publiais maintenant! Je ne peux y croire! Bon travail!
M. Xcoder
4

C ++ (gcc) , 100 octets, M. Xcoder

#include<math.h>
#include"iostream"
using namespace std;int main(){float n;cin>>n;cout<<pow(n,2.5);}

Essayez-le en ligne!

fergusq
la source
Bien joué! Veuillez modifier la réponse que vous craquez, car je ne peux pas le faire maintenant!
M. Xcoder
Un utilisateur anonyme a suggéré une modification pour économiser 8 octets en supprimant usinget en faisant simplementint main(){float n;std::cin>>n;std::cout<<pow(n,2.5);}
Martin Ender
Enregistrez un autre octet #including <cmath> au lieu de math.h. :)
zyndor
4

Haskell, Leo

x=exp.(2.5*).log

Une fonction sans point nommée x. Utilisation: x 4->32.0

nimi
la source
4

Inform 7 , corvus_192

Cool, une entrée Inform7. :) Je devais juste essayer celui-ci.

Je suis sûr que c'est la solution envisagée:

R is a room.

To f (n - number): say "[n * n * real square root of n]".

Notez que cette solution ne fonctionne que si elle est compilée avec le backend Glulx, en raison de l'utilisation de la real square root offonction.


BTW, les guillemets doubles et les crochets ne sont en fait pas nécessaires; tout say n * n * real square root of nfonctionnerait aussi bien. Les périodes à la fin des commandes peuvent également être omises; ou nous pourrions garder la première période et nous débarrasser des nouvelles lignes à la place. D'autres parties du code que nous pourrions supprimer incluent l'article "a" avant "room" et les espaces avant les parenthèses et après les deux points. Heureusement, puisque nous avons une paire de supports de rechange, nous pouvons toujours les utiliser pour commenter tous ces caractères supplémentaires. ;) C'est donc aussi une solution valable:

R is room.To f(n - number):say n * n * real square root of n[
" a . "
]

Pour tester cette solution de manière interactive, il est pratique d'ajouter quelque chose comme le faisceau de test suivant au code:

Effing is an action applying to one number.
Understand "f [number]" as effing.
Carry out effing: f the number understood.

Après avoir compilé et exécuté le programme, vous pouvez par exemple taper f 4. f 6. f 9. f 25à l' >invite et recevoir quelque chose comme la sortie suivante:

Welcome
An Interactive Fiction
Release 1 / Serial number 170404 / Inform 7 build 6L38 (I6/v6.33 lib 6/12N) SD

R

>f 4. f 6. f 9. f 25
32.0
88.18164
243.0
3125.0
>

BTW, je viens de remarquer qu'Inform (ou vraisemblablement plutôt Glulx) arrondit la dernière décimale de l' f 6erreur: la valeur correcte est beaucoup plus proche de 88,18163 que de 88,18164. Heureusement, je ne pense pas que cela affecte l'exactitude de la ou des solutions, d'autant plus que le défi spécifiait «tout mécanisme d'arrondi de votre choix». :)

Ilmari Karonen
la source
Je suis sûr d'avoir trouvé un violon Inform 7 il y a quelque temps, mais je ne le trouve pas lorsque je recherche. Savez-vous s'il y a un interprète en ligne quelque part?
Flounderer
@Flounderer: Je n'en connais pas vraiment. Il existe certainement des joueurs en ligne (même basés sur JS) pour le bytecode Glulx / Z-machine produit par le compilateur Inform 7, mais je ne suis au courant de rien qui pourrait directement prendre le code source Inform 7 ordinaire et le compiler et l'exécuter en ligne. Cependant, le compilateur / IDE est assez facile à installer; sur Ubuntu Linux, c'est aussi simple que cela apt-get install gnome-inform7.
Ilmari Karonen le
4

Mathematica, Greg Martin

f[y_]:=With[{x=
    #&@@{#(#)#^(1/(1+1))&@y,#&@@@{1^(1),-1}}
},Print[#,".",IntegerString[Round@#2,10,3]]&@@QuotientRemainder[1000x,1000]]

Merci d'avoir laissé les trucs d'arrondi intacts!

Explication: #(#)#^(1/(1+1))&@yfait le travail principal de la multiplication au ycarré, alias y(y), et y« est la racine carrée, y^(1/(1+1)). Le #&@@@{1^(1),-1}bit est juste indésirable pour utiliser les autres lettres et #&@@sélectionne le bit utile de la poubelle.

Pas un arbre
la source
4

MATL , 12 octets, Luis Mendo

10'U&+:'n/^P

Calculez 10/4 = 2,5 avec 4 provenant de la longueur de la chaîne. Utilisez-le comme exposant. P est un no-op ici.

tehtmi
la source
4

Python 3, 44 octets, Kyle Gullion

Ces informations *étaient tout à fait trompeuses. Très intelligent!

lambda i:i**(lambda o,r:o/r)(*map(ord,'i*'))

En raison du jeu de caractères assez limité, je serais très surpris s'il y avait d'autres solutions valables au-delà du renommage trivial ou de la réorganisation des arguments.

KSab
la source
Tu m'as bien fait!
Kyle Gullion
3

R, Steadybox

y<-function(p)(p^(1/2)*p^2);

semble être une anagramme de funny(p1)-tio(^*^)/pc(2)<p2;

Flet
la source
3

Python 2, 60 octets, Anthony Pham

print    (input()**(5.0/(2*5554448893999/5554448893840))-0)

Basé sur l'élimination des caractères via la division flottante de Python 2 (la valeur par défaut pour /entre les entiers).

notjagan
la source
3

C, 50 octets, Dave

double b(float \ufa2d){return pow(\ufa2d,25e-1);%>

Essayez-le en ligne!

Cela nécessite un -lmindicateur de compilation, mais je ne sais pas comment il serait possible de résoudre ce problème sans lui.

fergusq
la source
correct, et presque exactement ce que j'avais (variable a été nommée \uad2fsur le mien). Bien joué; Je pensais avoir laissé suffisamment de harengs rouges pour occuper les gens beaucoup plus longtemps! De plus, le -lmdrapeau n'était pas nécessaire pour moi en utilisant Clang (je l'aurais mentionné!) Mais vous avez raison à strictement parler, c'est obligatoire.
Dave
3

R, Flet

Ceci est une fissure de la solution à 33 octets de @Flounderer

scan()^(floor(pi)-1/2)-sin(7*0e1)

Usage:

> scan()^(floor(pi)-1/2)-sin(7*0e1)
1: 4
2: 
Read 1 item
[1] 32
> scan()^(floor(pi)-1/2)-sin(7*0e1)
1: 6
2: 
Read 1 item
[1] 88.18163
> scan()^(floor(pi)-1/2)-sin(7*0e1)
1: 9
2: 
Read 1 item
[1] 243
> scan()^(floor(pi)-1/2)-sin(7*0e1)
1: 25
2: 
Read 1 item
[1] 3125
plannapus
la source
Oui, ce n'est pas la solution prévue qui impliquait sin(pi), mais malheureusement cela fonctionne! +1
Flet
C'étaitscan()^(-floor(-sin(pi)*2e17)/10)
Flounderer
3

RProgN 2, ATaco

]2^\š*

Apparemment, StackExchange a besoin de caractères supplémentaires, alors c'est parti.

notjagan
la source
Ma solution était ]š\2^* , mais ils fonctionnent tous les deux de la même manière.
ATaco
3

HODOR, 198, Ce gars

Walder
Hodor?!
hodor.
Hodor, Hodor Hodor Hodor Hodor Hodor Hodor Hodor, Hodor Hodor,
hodor,
Hodor, Hodor Hodor Hodor Hodor Hodor Hodor, Hodor Hodor,
Hodor, Hodor Hodor Hodor, hodor!,
HODOR!!
HODOR!!!

Explication:

Start
read input into accumulator
copy accumulator to storage
Do math, option 7(nth root), n=2
swap storage and accumulator
Do math, option 6(nth power), n=2
Do math, option 3(times), storage
output accumulator as a number
end

Remarque: j'ai dû apporter quelques modifications à l'interpréteur get pour qu'il s'exécute sur ma machine (celui que vous avez publié ne semble pas accepter les h minuscules, entre autres)

De plus, je ne semble pas avoir assez de représentants pour commenter, donc si quelqu'un pouvait le faire savoir à @This Guy, je lui serais reconnaissant

Je pense que cela a corrigé l'erreur, le code commence maintenant par Walder au lieu de Wylis, qui ajoute l'octet supplémentaire

wwj
la source
Presque là. J'ai dû changer une erreur dans mon code afin que le vôtre ne soit pas tout à fait correct.
caird coinheringaahing
correction de la commande de démarrage
wwj
Bien que vous l'ayez mais vous avez opté pour une méthode différente de la mienne qui utilise le même nombre d'octets. Votre réponse ferait ce que vous vouliez, mais ce n'est pas la même que la mienne. J'ai également dû changer le nom à cause de cela , j'ai donc apporté une modification à vos messages.
caird coinheringaahing
pour des éclaircissements, cela compte-t-il toujours comme une fissure, ou dois-je correspondre exactement?
wwj
Je ne suis pas exactement sûr. Je vais demander dans les commentaires. +1 votre solution me fait vraiment réfléchir!
caird coinheringaahing
3

C #, 172 octets, raznagul

La partie la plus difficile était de savoir quoi faire avec tous les restes.

using System;using S=System.Console;class PMabddellorttuuv{static void Main(){S.Write(Math.Pow(double.Parse(S.ReadLine()),2.5));Func<double> o;int q=1,M=q*2,b,e;q*=(q*M);}}
SLuck49
la source
Agréable! Je suis également resté coincé dans les restes. Je n'ai pas pensé à les ajouter au nom de la classe, doh !. Bon travail!
Emigna
+1 Pas ce que j'avais prévu, mais une très belle solution. ;)
raznagul
3

EXCEL, 26 Bytes pajonk

=SQRT(A1)*A1^2/1/ISNA(IP2)

A1 comme entrée IP2 contient une deuxième entrée avec une erreur # N / A dans ce cas ISNA (IP2) appartient à 1

Pour un supplément, () nous pouvons le faire

=SQRT(A1)*A1^2/ISNA(PI(1/2))
Jörg Hülsermann
la source
La deuxième entrée est-elle autorisée dans un tel défi?
pajonk
@pajonk Les règles disent "Vous pouvez prendre des entrées de n'importe quelle manière standard", donc je suppose que vous faites cette astuce avec une deuxième entrée
Jörg Hülsermann
@pajonk J'ai amélioré mon message, il se pourrait que vous ayez fait une petite erreur
Jörg Hülsermann
La manière standard de prendre un nombre est (je pense) de prendre une entrée. À mon avis, la deuxième contribution serait injuste et contraire aux règles. PS Il n'y a pas d'erreur dans le nombre de crochets.
pajonk
@pajonk Je ne peux pas utiliser de combinaisons avec SIN et PI car il n'y a pas assez de crochets. =SQRT(A1)*A1^2/SIN(PI()/2)Si vous définissez l'erreur #NA via le formatage ou autre chose, je le verrais comme une deuxième entrée supplémentaire. SQRT et ISNA sont les deux seules fonctions qui ont un peu de sens. Mais veuillez demander à l'homme qui avait développé la question
Jörg Hülsermann
3

Python 3.6, 64 octets, M. Xcoder

php38af4r2aoot2srm0itpfpmm0726991i=     (lambda x:x**2.5*1*1/1);

Peut-être pas ce qui était prévu, mais ça marche;)

$ python3
Python 3.6.1 (default, Apr  4 2017, 09:36:47) 
[GCC 4.2.1 Compatible Apple LLVM 7.0.2 (clang-700.1.81)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> php38af4r2aoot2srm0itpfpmm0726991i=     (lambda x:x**2.5*1*1/1);
>>> php38af4r2aoot2srm0itpfpmm0726991i(6)
88.18163074019441
>>> php38af4r2aoot2srm0itpfpmm0726991i(4)
32.0
>>> php38af4r2aoot2srm0itpfpmm0726991i(25)
3125.0

Pas assez de représentants pour commenter la réponse du fil des flics pour l'instant, désolé ... J'apprécierais que quelqu'un puisse le faire pour moi, merci!

user4867444
la source
@Monsieur. Xcoder, comme dit ci-dessus, ne peut pas commenter votre message dans le fil des flics, désolé :)
user4867444
from math import pi as pp0012223467899;f=lambda x:x**2.5*1*(1)/1Je suis venu poster une solution similaire juste pour voir que j'ai été battu au poinçon. J'ai ajouté un lien vers ce post sur le fil des flics pour vous.
Kyle Gullion
3

Röda , 28 octets, fergusq

f(n){push n^0.5,n^2|product}
tehtmi
la source
3

Python 2.7, Koishore Roy

s=e=x=y=input()**0.5
print'%.3f'%(y**(5.0))
ovs
la source
Ou y=x=e=s, les deux fonctionnent :)) Bon travail de toute façon!
M. Xcoder
Bon travail. : P Maintenant, je dois travailler sur un nouveau code. Zut!
Koishore Roy
3

R, Flet

C'est une fissure de la solution de 31 octets de @ Flounderer:

`[.`=function(`]`)`]`^`[`(lh,9)

Ok, ça a été difficile. Il crée une fonction appelée `[.`. L'argument de la fonction est appelé `]`qui est élevé à la puissance 2,5 en utilisant le 9ème élément de la série temporelle intégrée lh("une série chronologique régulière donnant l'hormone lutéinisante dans des échantillons de sang à des intervalles de 10 minutes d'une femme humaine, 48 échantillons . "utilisé comme exemple dans l'un des packages de base de R). lh[9]est ici par dessus remplacé par son équivalent `[`(lh, 9). Désobscurcie en substituant fle nom de la fonction et le nom nde l'argument, la fonction devient alorsf=function(n)n^lh[9] .

Usage:

> `[.`=function(`]`)`]`^`[`(lh,9)
> `[.`(4)
[1] 32
> `[.`(6)
[1] 88.18163
> `[.`(9)
[1] 243
> `[.`(25)
[1] 3125
plannapus
la source
2

Python 2, 44 octets, Anthony Pham

print int(raw_input())**(0+000000000000.5*5)

Prend l'entrée de raw_input, convertit en int et passe à la puissance 2,5

fəˈnɛtɪk
la source
2

JavaScript, fəˈnɛtɪk

n=>n**("ggggg".length*2**(-"g".length))// ""((((((()))))))***,-...;;=====>Seeeeegggghhhhhhhhhilllnnnnnnorrrsstttttttttttu{}

Obtient 5/2 à 5 fois 2 à la première puissance négative, où 5 et 1 ont été reçus de la longueur des chaînes. A pris la voie facile dans un sens en commentant les caractères étrangers.

notjagan
la source
2

C #, 112 octets, Jan Ivan

using System;class P{static void Main(){var b=Math.Pow(double.Parse(Console.ReadLine()),2.5);Console.Write(b);}}
Emigna
la source
2

05AB1E , 47 octets, Okx

).2555BFHIJJKKKPQRS``„cg…ghi…lsw…x}T…Áöž«‚¹n¹t*

Essayez-le en ligne!

Emigna
la source
Ah, je savais qu'il y aurait une solution de contournement à la méthode que j'utilisais pour «sécuriser» le code. Bien joué!
Okx
@Okx: Oui, 05AB1E est très difficile à remplir avec du code supplémentaire sans le rendre contournable.
Emigna
Je vais voir si je peux vous en rendre une plus délicate;)
Okx
@Okx: J'ai hâte :) J'ai aussi une idée que je peux essayer de mettre en œuvre après le travail;)
Emigna
2

Boule de feu , 8 octets, Okx

♥²♥1Z/^*

Explication:

♥²♥1Z/^*
♥²       Push first input squared.
  ♥      Push first input again.
   1Z/   Push 1/2
      ^  First input to the 1/2th
       * Multiply square and root

Je ne sais pas si cela fonctionne. Je n'ai actuellement aucun java sur mon ordinateur portable. :(

Roman Gräf
la source
I don't think that will work. Easy fix though, so I'll give you the answer. You just need to swap the Z1 into 1Z.
Okx
I was sure I did a mistake there. Updated.
Roman Gräf
2

Haskell, 64 bytes, @nimi

product.(<$>(($(succ.cos$0))<$>[(flip<$>flip)id$id,recip])).(**)

Try it online! That was a fun one. I first found product.(<$>(($succ(cos$0))<$>[id,recip])).(**) which behaves correctly and than had to fit flip flip <$> () $ id . somewhere into it.

Laikoni
la source
2

R, steadybox

a222=function(s)(s**0.5)*s**2**1

Usage:

> a222=function(s)(s**0.5)*s**2**1
> a222(4)
[1] 32
> a222(6)
[1] 88.18163
> a222(9)
[1] 243
> a222(25)
[1] 3125
plannapus
la source
Original: a=function(s)s**2*s**(0.125*2*2)
Steadybox
2

05AB1E, 22 bytes, P. Knops

n¹t*qA9¥="'?:@->%#[{!.

Try it online!

Explanation

n      # square of input
   *   # times
 ¹t    # square root of input
    q  # end program

The rest of the operations never get executed.
We could have done it without the q as well by having ? after the calculation and escaping the equality sign for example with '=.

Emigna
la source
1
Was just doing it for fun :D
P. Knops
@P.Knops: That's the best reason :)
Emigna