Restricted mini conteste le fil de flic

33

Fil de voleur

Votre tâche en tant que policier consiste à sélectionner trois choses:

  • Un langage de programmation

  • Une séquence OEIS

  • Un jeu d'octets

Vous devez ensuite écrire secrètement un programme dans ce langage qui calcule la nième séquence de termes en utilisant uniquement les octets de l'ensemble. Vous allez révéler les trois informations afin que les voleurs puissent essayer de comprendre le programme.

Les réponses seront notées en fonction du nombre d'octets dans l'ensemble d'octets, plus le score sera bon. Les réponses fissurées ont un score automatique de 0. Si votre réponse est déchirée après une semaine, vous pouvez révéler le programme souhaité et marquer votre réponse comme "sûre".

Les réponses doivent être capables de calculer chaque terme dans les fichiers b de la séquence, mais ne sont pas obligées de calculer les termes après.

Les séquences peuvent être 1 ou 0 indexées pour les flics et les voleurs.

Voici un script Python qui vérifie si votre code correspond à l'ensemble d'octets donné.

Assistant de blé
la source
1
Un score inférieur est meilleur? Ou plus? Nous essayons donc essentiellement de trouver un jeu de caractères restreint qui rend difficile la création d'un programme dans la langue choisie, une fois que nous avons déjà trouvé une solution?
BradC
1
Avons-nous besoin d'utiliser tous les octets de notre ensemble? Je suppose que oui, mais cela devrait probablement être précisé dans le défi.
Shaggy
1
@Shaggy généralement non, vous pouvez en inclure d'autres pour les harengs rouges, mais les voleurs peuvent tout utiliser
Stephen
1
Les voleurs peuvent-ils utiliser le même octet deux fois ou plus?
M. Xcoder le
2
@ Azulflame Les fichiers b sont des fichiers associés à chaque séquence, ils sont accessibles en remplaçant les mots Aavec un bet en ajoutant un .txt. Par exemple, oeis.org/b4.txt accéderait aux fichiers b pour cette séquence.
Wheat Wizard

Réponses:

11

Haskell , A209229 , ( fissuré )

11 caractères (y compris nouvelle ligne):

s<=[ ]
how!

Sorties True / False en tant que fonction indicatrice pour des puissances de 2:

1 => True
2 => True
3 => False
4 => True
5 => False
6 => False
7 => False
8 => True
9 => False
...

Les entrées sont des entiers positifs.

Xnor
la source
Est-ce que 0 donne False?
H.PWiz
@ H.PWiz Mon code ne fonctionne pas pour 0, votre crack peut faire ce que vous voulez.
xnor
Fissuré! Très intelligent ~
Lynn
@ Lynn Bien fait!
xnor
5

Python 2 , A000045 ( fissuré )

ml:= input(as,forge)

il contient un espace et une nouvelle ligne
Essayez-le en ligne!
Solution envisagée

Barre
la source
1
+1 Je suis surpris que cela n'utilise pas +du tout
M. Xcoder
2
Félicitations pour 10k BTT :)
Adnan
Craqué
Adnan
@ Mr.Xcoder Vous ne connaissez pas bien le python, mais cela plusfonctionnerait-il?
JAD
@JarkoDubbeldam Non, sumserait
M. Xcoder
5

Haskell, A000045 ( fissuré )

J'ai pris ma décision, je pense que j'aime tplus que s.

Nous allons donc utiliser ces 30 octets (y compris newline):

abcdeFgh|jklmnopqrtTuvwxyz
=()

Veuillez noter que la description générale du défi exige que

Les réponses doivent être capables de calculer chaque terme des fichiers b de la séquence [...].

Dans ce cas, le fichier b va jusqu'au 2000e numéro, ce qui est bien au-delà de ce qui peut être calculé Int.

Christian Sievers
la source
Fissuré !
Lynn
Cracked
H.PWiz
4

Octave, A000290 , fissuré !

La séquence correspond aux nombres carrés: 0, 1, 4, 9, 16, 25, 36, 49 ... (afin que vous n'ayez pas à vérifier le lien).

'()/@^_
Stewie Griffin
la source
Fissuré!
Conor O'Brien
C'était bien la solution voulue :)
Stewie Griffin
4

Haskell, A000045 ( craquage )

Tout le monde aime les chiffres de Fibonacci, j'aime Haskell ...

J'ai soigneusement sélectionné 30 octets pour vous: les lettres minuscules sauf f, iet t, vous obtenez les lettres majuscules Fet Tet le symbole de la conduite à la |place, et les trois symboles =(), et retour à la ligne. Les voici à nouveau:

abcdeFgh|jklmnopqrsTuvwxyz
=()
Christian Sievers
la source
Cracked
xnor
4

Haskell, A034262 , 43 octets, fissuré

!"#%',.=?ABCDEFGHIJKLMNOPQRSTUVWXYZ[]_{|}~

Calculs a(n) = n³ + n.

Laikoni
la source
Impossible d'obtenir le fichier b maintenant. Est-ce que le retour est Intsuffisant?
Christian Sievers
1
Fissuré ?
Christian Sievers
@ChristianSievers Oui, c'est exactement ma solution.
Laikoni
4

Haskell, A009056 ( fissuré )

Une autre simple, avec encore assez de lettres pour que ça ressemble à un Haskell ordinaire et peut-être que vous puissiez me surprendre en trouvant une solution complètement différente de la mienne.

La séquence est Numbers> = 3 et le jeu de caractères est composé de ces 30 octets:

{[abcdefghijklmnopqr uvwxyz]}.

La fissure a de belles techniques. Je pensais juste à ceci:

head . flip drop [ floor pi .. ]

Christian Sievers
la source
1
Fissuré .
nimi
3

C (C99), A000005 , 25 octets #, fissuré!

Ce sont les octets d’un problème complet, prend n comme argument de ligne de commande et génère une réponse à stdout (l’espace est inclus dans bytecount).

<=>,;!"()*%+acdfhimnoprt 
dj0wns
la source
ok je me demandais lol. comme argument de ligne de commande?
Conor O'Brien
Oui, je vais préciser cela
dj0wns
1
Fissuré! c'était amusant: D
Conor O'Brien
3

Unary , A002275 , 1 octet

Ensemble d'octets:

0

Je devais au moins l'essayer: 3

(Je ne pense pas que ce sera particulièrement difficile vu que chaque commande dans la langue est disponible)

sonar235
la source
1
Pourquoi ne pas inclure tous les octets pour maximiser votre score? Vous avez marqué le montant le plus bas possible, alors que l'inclusion de tous les octets n'aurait aucune incidence.
Wheat Wizard
Je pensais que nous visions un faible score (désolé, je suis nouveau ici).
sonar235
1
Craqué
Bleu
@muddyfish La saisie est-elle autorisée en tant que personnage pour un brainfuck?
sonar235
@ sonar235 En général, nous autorisons l'entrée comme personnage de brainfuck. Bien que les valeurs ici dépassent 255, je ne pense pas qu'une réponse qui les utilise puisse être valide.
Wheat Wizard
3

JavaScript (ES6), 17 octets, A000290 ( fissuré )

Là encore, il s’agit de la simple séquence carrée a (n) = n 2 .

Ensemble d'octets:

$()=>CI`abelotv{}
Arnauld
la source
Fissuré!
LarsW
3

Hexagony , A057077 , 77 octets

Séquence périodique 1, 1, -1, -1. Sous forme de liste:

a(0) = 1
a(1) = 1
a(2) = -1
a(3) = -1
a(4) = 1
a(5) = 1
a(6) = -1
   ...

Jeu de caractères (édité), qui comprend une nouvelle ligne et un caractère d'espacement:

!% & (), 0123456789;? @ ABCDEFGHIJKLMOPQRSTUVWXYZ ^ abcdefghijklmnopqrstuvwxyz [] #. 

Essayez-le en ligne!

Adnan
la source
Une raison quelconque pour laquelle vous avez modifié le jeu de caractères?
Poke
1
@Poke apparemment, plus le nombre d'octets est élevé, mieux c'est, alors je viens d'ajouter un tas de commandes non utiles.
Adnan
3

Haskell, A000045 ( fissuré )

C'est fissuré, et je ne vais pas commencer une nouvelle version, mais si vous voulez jouer plus: c'est possible sans y, et il est possible d'être efficace.


Je m'excuse de vous avoir conduit dans la mauvaise direction en vous donnant un g. Faisons la même chose sans!

Voici les 29 octets restants (y compris la nouvelle ligne):

abcdeFh|jklmnopqrtTuvwxyz
=()

Encore une fois, rappelez-vous que Intcela ne sera pas suffisant pour calculer le nombre 2000 de Fibonacci qui est nécessaire car il se trouve dans le fichier b.

Christian Sievers
la source
Cracked
nimi
3

Haskell, A000045 ( fissuré )

Ceci est un peu (comme annoncé) pas une nouvelle version, mais complètement différente. (Droite?)

J'espère toujours pouvoir vous faire redécouvrir ma belle petite observation.

Cette fois , vous êtes invité à mettre en œuvre la suite de Fibonacci en utilisant un jeu de caractères de taille 17, (pour autant que je sache) ne contient que l' un de deux caractères inutiles:

eilnt=(,).[ ]_:0!

Notez qu'il n'y a pas de saut de ligne (mais n'hésitez pas à montrer une version qui en contient pour la lisibilité) et rappelez-vous que vous devez être capable de calculer le 2000ème nombre de Fibonacci.

Christian Sievers
la source
Fissuré .
nimi
3

Cubix, A000027 (SAFE) 17 points

!&')-/0;@Oiru.NSQ

Ma solution:

!O!;i)!/u&!!r-)0'u;;!@

regardez-le en ligne ici

À l'origine, je l'avais fait sans, .NSQmais je pensais pouvoir les ajouter en toute sécurité.

Explication:

Cette séquence est juste "Les entiers positifs". Cependant, Cubix a trois commandes d’entrée i, qui lisent dans un seul caractère (poussant -1si entrée est vide), Aqui lisent dans le reste de l’entrée sous forme de caractères (poussant a -1au sommet de la pile), et Iqui lisant le numéro suivant de l'entrée (appuyer 0s'il n'y a pas de correspondance). Donc, naturellement, je n'ai fourni que ice qui se lit en chiffres comme valeur ascii. euh-oh. De plus, -1c'est le marqueur habituel pour la fin de l'entrée, en conjonction avec ?donc je me suis débarrassé de ?, me forçant à utiliser !(ignorer l'instruction suivante si le TOS n'est pas nul) pour le flux de contrôle. Enfin, je pensais avoir besoin &de concaténer les chiffres pour l’impression avecO (qui affiche le haut de la pile sous forme de nombre), mais je réalise maintenant que ce n'était pas nécessaire non plus!

Une autre partie du défi consistait à l'origine à ne pas avoir .le caractère non-op, mais vous pouvez utiliser des paires de à la !place si vous êtes prudent:

    ! O
    ! ;
i ) ! / u & ! !
r - ) 0 ' u ; ;
    ! @
    . .

i) : lire l'entrée, incrémenter.

!/ : si le haut de la pile est à zéro (fin d’entrée), tournez à gauche

left: ;O.@pop top of stack, sortie sous forme de nombre, arrêt.

autrement:

u'0: poussez le code de caractère 0du haut de la pile

)-r: incrémenter, soustraire et faire pivoter

;; : pop top of stack deux fois

u& : concaténer des chiffres

!!: effet zéro net, maintenant nous sommes à i)nouveau.

Giuseppe
la source
Cubix a des personnages noop non? Pourquoi ne les ajoutez-vous pas pour augmenter votre score? Ou fait-il partie du défi qu'il n'y a pas de noops.
Wheat Wizard
@ WheatWizard, j'ai décidé d'être clément et d'ajouter .mais cela peut être fait sans elle.
Giuseppe
3

Graine , A005408 (numéros impairs) - Coffre-fort

Voici un peu plus difficile. Vous pouvez utiliser n'importe quel caractère valide dans Seed:

[0-9 ]

Vous ne devriez pas être capable de forcer brutalement celui-ci en une semaine sauf si vous avez un monstre d'ordinateur. Bonne chance! C'est craquant.

Allusion

C’est le programme Befunge-98 utilisé dans ma solution: 9&2*1-.@(le 9peut être supprimé, mais ma solution a juste

Solution

8 47142938850356537668025719950342285215695875470457212766920093958965599014291682211474803930206233718243166021324700185443274842742744297183042397910454208210130742260519105651032450664856693714718759816232968955289663444878636053035645231246428917992493766505872029989544065894418166685284738859999912471659057565000392419689361271972485444731284404987238803115210428572945108908191097214978382112218242627719651728712577306652405452922782307249485947045215982784790396555726144526602778473387279897334709142853151393812930171163300904436548870603006549005515709074682843356844201220668045057407146751793470423217099467145255174198241606814578351260769359571053755888106818197239116973006365593563235361647743411341624822052103816968153274122434280200888824954875622811325064255818154979564925710534165572852442761249176778416688044630942040966271963723430245979221181930857841829694362184653939393940015797332978459794253176110314873994228261888801228999293570329618551223457182420746927212801550646743152754821640064626761542582557138452651970009253770914346130172884305622027370793496993281847017017643506435562229916984107083951938286577012273222191422054315198157936674247934699496471202544270325061352014830137178245082445717253260177560449757186762445707057028987371278573629077370632470496186218574320801798046510846708620502139560277546345198686675095078255875594169064796673074708822106659920187882062247609587560174781170641367430722951002242213604709887062481149928551745163110045572994991844223216663621203042075294195007458339984527333125093390189721042315604498435269143549420166732177200370228527273606218617171975362431824163269672003982537382982066136613799403024924018145511099557720492305303748099327810811511080314262364010281851651151072957475365629128068033597559560186625877942054704386175359499573139930378099420149452745731809033737756051947913924265484582800618244473333957173960222243311738522875022546610298627492222587971756897328087719407454153248557203886421828643453889090192355970705084245312184441674098515659253482621260617211786550204852895652236768886852209506535523414991099331857674826373947830587028494510697603296607361093480842935154672353288419699354739650168309017848485131553416956405911683526896232046773861961911767319373432460217755874481607587604361758089936007730253450733375831228127106295259261723611771334468553746160739548375950046831923765023329346333968732796413192682936767133122325481273354810124729664400173367781325488656859581438769940474229394692089519981810909719628263357284973442177568041416363386891516725592952892168077523560584005586276794967492051823290615767599202657060820223928678900774601616908031321346819422162123048834532926372862962159255934240435694566497798544870186550219886342379298214007368081326725550763589917206162393892085506551547475259270513853987294911388226039365971184089828739349642347312302559286882065147953715607221387657413593069535573044067517274676745306396611760657091792151803798859781616126637075577936361782593546481811651450365118155866449850474140044293772144065341051900055416408240857348697564252386403719942197789892382627153382011984996644288495699209129097948405810551134169739499539470610790009272281731894550593600643079188663110695127017324336488487580799309995227054576681630676222848231145106058050452439356753552872060820230589152143268436210090733908507724084889788244157692417246691477400856716677564609725979550100138132944851304473466485128295568194188600539248624248078558656162635444219199062786468487219220160009464328883337821175254405764395407405891483810757405446047244460754827113527540703326714751461178900155717130399854358953609995319006890674085682111514072508440632941090209366005504352890092326935445829213294943731517698438648298921337375443947066950275955144209037675013663600062205168551851984361951824731229113379464426979717688372371011461890139087487634586087688796134318950140718824105959727161482389914414206768064990410615468858520426399188835467970981786227122743162945627167772066100574532803061925537235491026486409948728571706557098859331941260622260924660292578136091523126589085799981416326395824628987154802653126685882440760385315869346960183809644486238810912663304360284449610976505715001267334297285036791711464142665122000857666018757370925847113798258537503747803972255591351740843663253694303946089997282812556281486820325652814785261116697261899511762129550421005941055852897451832731304151488058522478260009347144486599715629242208891126238083949281490804191584238425634093683587199278186505945727829025071885767559828670803412582690901456978557379916793144695491189633486065077294485660840922713748873840986104486221528464294334436081663106336911265802650605150347413103936140565054608396116572669757269475369570465915381045895991937087068526458273755454602799814909213983801968791431574508976448235055061998715636460946550584682626461010298101802277643570201189324102499951196290880892383380284543173390448406975616650185808619832614403133944687275834716343817926764699295672501869876060896683204343897481630037607159476461359111190545646447421653872016775582115425356868533678655969328210255235050133718364831289991244684695035034122861927276046255405376531096051541299607470934463981741370397268760811035606321455156217990078359217247117349544774085111287345436916077577032709684005131011429476229617901273007027774182864475737502587896225475248267937497254066190335088823904767397814233350286976811901982274477445433872253983823904938249655089770642137858608313524715533520654523880832056453080193644871440738737277389718589793074725139142291918837706550037934799585495183374639955887618135803388399608755212147742199481865453122900714456703147150994585431640652462593333773031385396586933380738103697887063571042512186708015948688088011290197524699274772775288900864690592106393483764109837848793374117655194139018455509931621247697015323332300969105814058088442693320033876473960017819576425062784644138417943454576404265382986995583045527928832
TehPers
la source
Comment avez-vous généré cela?
Christopher
@ 2EZ4RTZ douloureusement, et avec la source de Python comme référence. Cela peut probablement être beaucoup joué au golf cependant.
TehPers
2

R, A000142 , ( fissuré )

Ensemble d'octets:

-()*,`=cfinotu

Solution envisagée:

f=function(n,c=n==n)'if'(n,f(n-(n==n),c*n),c*(n==n))

JAD
la source
fissuré!
Giuseppe
2

cQuents , A000027 , fissuré


 !"#%&'()*+,-./0123456789:;?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

C'est vrai! Vous obtenez tout l'ASCII! Attendez ... il n'y a pas $... que se passe-t-il $encore dans les quêtes? Oh, oui, l'index intégré. Eh bien, bonne chance: /

Solution envisagée:

#|A:A

Essayez-le en ligne!

Stephen
la source
Fissuré ?
Adnan
@Adnan yup, ça fonctionne, j'imagine que je n'aurais pas dû l'ouvrir autant que je l'ai fait: PI ne pouvait trouver aucune autre façon de le faire, bon travail. Ajout de la solution souhaitée.
Stephen
2

Ruby , A000004 , 5 octets, fissuré

Juste déconner pour commencer. Devrait être facile pour toute personne familière avec Ruby. C'est un faible score, mais peu importe.

/np.$

Exploit involontaire craqué

Cracked (réponse prévue à l'aide du ndrapeau)

Valeur d'encre
la source
Fissuré ?
Adnan
@ Adam Eh, je vais l'accepter. Aurait dû exiger le ndrapeau (c'est la raison pour laquelle il est dans la séquence d'octets, et ferait $.égal à 1)
Valeur Ink
2

Python 3, A007504 ( fissuré )

Cet octet, y compris newline:

bfuwo)nm1h[=(t+;0a
sig%pr, le:]

Mon code ne fournit pas une sortie infinie, mais peut calculer la liste b complète.

Azulflame
la source
1
Bienvenue chez PPCG!
Zacharý
1
Craqué
Jonathan Allan
1
Scrap que j'ai utilisé a .:(
Jonathan Allan
1
J'ai réparé la fissure.
Jonathan Allan
1
... et a migré vers Python 3.
Jonathan Allan
2

R, A000290 ( fissuré )

Ensemble d'octets:

()%cfinotu
JAD
la source
non c, mais tout le reste pour function? C'est horrible. Je sais comment faire cela, sauf pour lire en entrée ...
Giuseppe
@ Giuseppe woops, cela aurait adû être un c. Désolé.
JAD
1
C'est ce que je reçois pour avoir fait cette merde manuellement ...
JAD
Pas de soucis; c'est assez dur!
Giuseppe
fissuré
Giuseppe
2

cQuents , A000217 , fissuré

Octet:

$:=1;
\-

Notez que cela utilise une fonctionnalité pour laquelle je n’ai pas encore envoyé la documentation, je vais donc la mettre en place ce soir, si vous attendez jusqu’alors. (Ou vous pouvez parcourir mon code source ... amusez-vous). Documentation poussée. Serait un octet moins si un correctif récent était sur TIO.

Solution envisagée:

=1-1:--\1$ ;$

Essayez-le en ligne!

Stephen
la source
Fissuré!
Notjagan
2

JavaScript (ES6), 13 à 10 octets, A000045 , fissuré

Cela devrait être facile.

Voici la séquence de Fibonacci: F (n) = F (n-1) + F (n-2) avec F (0) = 0 et F (1) = 1.

Ensemble d'octets:

$()-:<=>?[]_~

Modifier:

Cela peut même être fait avec les 10 octets suivants:

$()-:=>?_~
Ra8
la source
Fissuré!
Kritixi Lithos
1
Ce n'est pas [code-golf]: "Les réponses seront notées par le nombre d'octets dans l'octet défini et le score sera bon." Plus d'octets sont meilleurs.
LarsW
@LarsW en revanche, plus d'octets facilite également la résolution des problèmes :)
JAD
2

Befunge , A000142 , 29 octets, ( fissuré )

Byte Set: @.$_ ^*:\v>-1&

Si vous ne pouvez pas le savoir, cet ensemble d'octets comprend un espace.

Cela devrait être modérément facile à résoudre.

Edit: Oublié le "A" avant OEIS

Jordan
la source
Cracked
KSmarts
2

R, A105311 , ( fissuré )

'%(),:=acdeginpstx

Essayons cela sans le lou o.

Depuis que cela a été fissuré, la solution envisagée:

cat(diag(diag((a=scan()))%x%diag((a==a):a)),sep=''). diagest une fonction intéressante, qui peut être utilisée de trois manières différentes. Lorsqu'il est présenté avec un seul entier ( diag(n)), il crée une matrice NxN avec 1 sur la diagonale. Lorsqu'il est présenté avec un vecteur ( diag(1:n)), il crée une matrice NxN avec le vecteur sur la diagonale. Lorsqu'il est présenté avec une matrice ( diag(diag(n))), il renvoie la diagonale sous forme de vecteur. %x%calculé le produit de Kronecker de deux matrices, où chaque élément de la matrice 1 est multiplié avec chaque élément de la matrice 2 séparément. Faire cela avec une nmatrice d'identité de longueur et une 1:nmatrice diagonale crée une n^2matrice diagonale de longueur avec 1:ndes ntemps répétés . diagextrait à nouveau et catimprime.

JAD
la source
1
ça va être encore plus amusant :)
Giuseppe
Est-ce que cela inclut une nouvelle ligne?
Giuseppe
@ Giuseppe Pas de nouvelles lignes
JAD
1
@ Giuseppe et moi venons de vérifier deux fois, cet octet est correct
JAD
[fissuré! ] ( codegolf.stackexchange.com/a/136457/67312 ) - J'ai (incorrectement) utilisé %o%avant de réaliser que cela %x%existait. Je suppose que je aurais pu faire 'i'=='i'pour , 1mais soit des œuvres de manière, donc.
Giuseppe