Drukowanie rosnąco ASCII, gliny

26

To jest wątek gliniarzy. Wątek rabusiów idzie tutaj .

Napisz program lub funkcję składającą się wyłącznie z drukowalnych znaków ASCII (z wyłączeniem tabulacji i nowego wiersza), które generują co najmniej 5 drukowalnych znaków ASCII w porządku rosnącym (od spacji do tyldy / 32 do 126). Postacie mogą być wyprowadzane kilka razy, o ile sąsiadują ze sobą. Pojedynczy znak nowej linii jest akceptowany. Musisz podać pełny wynik, a na każde 6 znaków w kodzie musisz podać jeden znak w kodzie, w miejscu, w którym się pojawia. Jeśli twój kod ma 5 lub mniej znaków, musisz ujawnić tylko długość. Nie ujawnisz więcej niż 1 znak na 6 w swoim kodzie.

Więc jeśli twój kod alphaprinterwypisuje alfabet z az, musisz ujawnić 2 znaki swojego kodu (użyj innych znaków podkreślenia), na przykład:

al__________  // or
__p__p______  // or
__________er

Zasady / specyfikacje:

  • Nie można dołączyć końcowych białych znaków, które nie mają funkcji.
  • Nie możesz używać komentarzy (ale złodzieje mogą używać komentarzy podczas łamania kodu)
  • Wbudowane operacje podstawowe kryptograficzne (w tym wszelkie rng, szyfrowanie, deszyfrowanie i mieszanie) są niedozwolone.
  • W językach, w których domyślne dane wyjściowe są takie jak w MATLAB:, ans =to jest akceptowane, o ile jest wyraźnie określone i pokazane, że ans =jest generowane. Należy również jasno stwierdzić, czy jest to część „rosnącego wyniku”, czy nie.
  • Wynik musi być deterministyczny
  • Używanie niewolnego języka nie jest akceptowane
  • Dane wyjściowe nie muszą być kolejnymi znakami. Zarówno abcdei abcdgsą ważne wyjścia.
  • Znaki nie muszą być rozróżniane, o ile wynik zawiera co najmniej 5 znaków. aaaaai aaaccsą ważne.
  • Odpowiedzi, które zakładają, że środowisko REPL nie są uważane za prawidłowe programy lub funkcje i dlatego są niedozwolone.
  • STDERR nie jest uważany za prawidłowy wynik, ale dane mogą być zapisywane w STDERR.

Jeśli ujawnione postacie są podkreślnikami, musisz je zidentyfikować, jak pokazano poniżej. W tym przypadku druga i szósta postać są odsłonięte, a pozostałe są nieznane.

_____________
 |   |

Uwaga: Rabusie muszą tylko znaleźć kod, który daje takie same wyniki. Język, długość rozwiązania złodziei i pozycja ujawnionych znaków również muszą być takie same.

Twój wynik to liczba znaków w kodzie. Zwycięzcą zostanie zgłoszenie o najniższym wyniku, który nie został złamany w ciągu 7 dni. Tylko zgłoszenia przesłane w 2015 r. (UTC) kwalifikują się do wygranej. Zgłoszenia przesłane później są mile widziane, ale nie można wygrać.

Aby ubiegać się o wygraną, musisz ujawnić pełny kod (po 7 dniach).

Twój post powinien mieć następujący format (nn to liczba znaków):


Język, znaki nn

Wydajność:

abcdefghijklmnopqrstuvwxyz

Kod (12 znaków):

al__________

Jeśli kod jest pęknięty, wstaw [Cracked] (link do crackera) w nagłówku. Jeśli przesłanie jest bezpieczne, wstaw „Bezpieczny” w nagłówku i ujawnij pełny kod w swojej odpowiedzi. Tylko odpowiedzi, które ujawniły pełny kod będą kwalifikowały się do wygranej.

Stewie Griffin
źródło
1
Czy to oznacza, że ​​jeśli mój kod jest print ( "abcde" ), mogę ujawnić trzy białe znaki?
Adnan
@Adnan, technicznie tak, możesz.
Stewie Griffin,
Gdy ktoś udzieli odpowiedzi na pytanie początkowe, możemy nawet nie znać długości kodu.
wizzwizz4
@ wizzwizz4 Seed nie jest dozwolony
Adnan
@Adnan Przypuszczam, że nie wymaga to żadnej siły mózgu, a jedynie siły brutalnej siły.
wizzwizz4

Odpowiedzi:

6

Sześciokąt , 8 znaków, bezpieczny

_______.

odbitki

123456

Możesz wypróbować Hexagony online

Rozwiązanie

`&)!."@.

To `tylko przekierowanie, aby kod wyglądał tak, jakby wymagał długości boku 3. O ile interpreter nie zostanie wykonany za -dpomocą strzałki wstecznej, zostanie po prostu usunięty z kodu źródłowego przed określeniem układu. Następnie kod pasuje do długości boku 2:

 & )
! . "
 @ .

To przesuwa wskaźnik pamięci (MP) wokół jednego sześciokąta siatki pamięci, jednocześnie kopiując wartość do następnej krawędzi, zwiększając ją i drukując.

Tak wygląda siatka pamięci, z MP rozpoczynającą zaznaczoną pozycję:

wprowadź opis zdjęcia tutaj

Początkowo wszystkie krawędzie są zerowe. Pierwszy &to brak )operacji , ale zwiększa krawędź i !drukuje 1. Następnie "przesuwa się z powrotem w lewo (krawędź oznaczona 2 ). Tam &kopiuje wartość. Ponieważ krawędź jest obecnie równa zero, lewy sąsiad (w kierunku MP) zostanie skopiowany, co 1właśnie wydrukowaliśmy. )zwiększa to, !drukuje 2. Trwa to tak długo, jak odwiedzamy nowe krawędzie i drukujemy wszystkie cyfry do 6. Kiedy natrafimy na krawędź, od której zaczęliśmy, &skopiujemy w zamian prawego sąsiada (ponieważ wartość krawędzi jest dodatnia), więc krawędź staje się 0ponownie, a przepływ sterowania przeskakuje do ostatniego rzędu, gdzie@ kończy program.

Wypróbuj online.

Martin Ender
źródło
Mam 123456, ale to nie tylko przestaje działać i trzeba go zabić. Czy to jest dozwolone?
Adnan
@Adnan Nie sądzę, że tak jest. Mój program kończy się.
Martin Ender
13

Perl, 46 znaków (bezpieczny)

Wydajność:

((()))*++,---../00011123445556667779::;;<<==??@@AAACEFGHHHIKKMMNOOOPPQQQRRSSSVWXXYY[[[\]]]^^^```aaeeffggghjjjnpppqqrttuwxxyzz{{{

Kod:

print _______________________________________;

Jakoś udało mi się usunąć oryginał w ciągu tygodnia, ale myślę, że to prawda:

print chr()x(($i=($i*41+7)%97)&3)for(40..123);

grc
źródło
9
Dobra robota. Zamieniłeś go w tajemniczą drukarkę strun. ಠ_ಠ +1
Addison Crump,
2
zobacz, jak zawiera jakiś generator liczb losowych homebrew: P
kwintopia
Podejrzewam, że wyjście to posortowane znaki z krótkiej listy komunikatów o błędach związanych z ewaluacją czegoś.
Sparr
11

Brainfuck, 48 znaków, złamany przez Mitcha Schwartza

Zrobiłem to dla złodziei. To zdecydowanie nie będzie zwycięskie zgłoszenie :)

____[_____[_______]__]___[___________]___[_____]

To daje:

ABCDEFGHIJKLMNOPQRSTUVWXYZ

Rozwiązanie:

++++[>++++[>++++<-]<-]+++[>++++++++<-]>++[>+.<-]

Testowałem to tutaj .

Wskazówka: Nie próbuj znajdować programów generowanych przez generatory online haha. Zostało to napisane ręcznie i może być rozwiązane tylko przez logiczne myślenie :)

Adnan
źródło
Pęknięty .
Mitch Schwartz
7

CJam, 13 znaków

_____________
  ||

odbitki

7LLMYahnsuv

Możesz wypróbować CJam online.

Rozwiązanie

{`__Jf^er$}_~

Myślałem, że oparcie gliny na uogólnionym quinie było całkiem sprytne i nowatorskie. Gdy tylko to opublikowałem, zdałem sobie z tego sprawę __i jestem ercałkowicie bezużyteczny, dlatego opublikowałem 8-bajtowego gliniarza CJam, aby uzyskać bardziej konkurencyjny wynik. Pietu dość szybko go złamał, więc bałam się, że on też to rozwiąże. Przypuszczam, że uratowała go niepotrzebnie skomplikowana transliteracja znaków.

W każdym razie kod pobiera własne znaki (oprócz _~), XOR każdy z 19 dla zaciemnienia, a następnie sortuje je.

Ten gliniarz doprowadził mnie do „odkrycia” xortingu , chociaż tak naprawdę go tutaj nie używam (i prawdopodobnie byłoby prawie niemożliwe, aby użyć go z krótkim uogólnionym quine).

Martin Ender
źródło
7

Głośne 3SP , 89 znaków (bezpieczne)

0 _____________________________ _ _ _ _ _ _ _ _ _ __2_2__________________________________

Oryginalny program:

0 0 0 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 0 3 2 2 2 2 0 3 0 1

Ten program drukuje

 !"#$$

(zwróć uwagę na wiodące miejsce) i nic więcej!

Objaśnienie (* n odnosi się do n-tej komórki w pamięci):

0 0 0                                Increment *0 to 3 (via the 0s in *0, *1, and *2)
2 (32 times)                         Increment *3 to 32 (via the 0 in *2 and the 3 in *0)
                                      (Note that *3 mod 256 is the character that prints)
0                                    Increment *32 (via the 3 in *0 and the 32 in *3)
3                                    Increment *1 (via the 32 in *3 and the 1 in *32)
                                      (Note that printing is on when *1 mod 2 is 1,
                                       which means " " prints right here)
2 (4 times)                          Increment *3 to 36 (printing '!"#$')
0                                    Increment *36 (via *3) (printing "$" again)
3                                    Increment *1 to 2 (via *36) (printing turns off)
0                                    Increment *36 to 2 (via *3)
1                                    Increment *0 to 4 (via *2)

Dwa ostatnie polecenia okazują się wystarczające, aby zapobiec ponownemu zwiększeniu wartości 1 przy kolejnych przejściach przez program, co oznacza, że ​​nic już nigdy nie zostanie wydrukowane, chociaż ustawianie wszystkich adresów pamięci od * 36 do wartości 36 na zawsze .

kwintopia
źródło
2
an esolang in which structured programming is impossible and every program has to be written from scratch.0_0 plus jeden ode mnie.
Conor O'Brien
Nie bądź zastraszony. Mówi dalej This is probably not that language. Jeśli usiądziesz i spróbujesz napisać program, który daje takie wyjście, prawdopodobnie otrzymasz coś bardzo podobnego.
kwintopia
Dzięki, ale nie, dziękuję ^ _ ^ specyfikacje sprawiły, że oszalałem. Znowu jest jak mózg ***, z wyjątkiem gorszych
Conor O'Brien
1
Czekamy na Twój program ujawniony. Nie mogę wymyślić sposobu, aby zmodyfikować moją odpowiedź, aby uzyskać 2 w tych miejscach zamiast 5. Pokonałeś mnie! Fajny język :)
Emigna
Aww ... zawsze smutny, gdy ktoś się poddaje: /
kwintopia
6

JavaScript (ES6), 60 znaków, Pęknięty przez użytkownika 81655

Nie jest obiecujący do wygrania, ale mam nadzieję, że złamanie go będzie przyjemnością:

e_e_______a__a____e___e________e__o___________o______o______

Ta funkcja zwraca:

    :ERacddeeeeeeffiinnnoorrrrst
^^^^ -> 4 whitespaces

Edytować

user81655 podzielił go znak po znaku:

e=e=>{try{a}catch(e){return[...e.toString()].sort().join``}}

wstawić nazwę tutaj
źródło
5

Matlab Octave, 27 znaków, bezpieczny

Wyzwanie

Odnośnie nowych ograniczeń językowych: Działa również w Octave.

____________3_3___4_3______

Dane wyjściowe (w oktawie): ( ans =nie jest częścią wyniku, pierwszym znakiem jest ")

ans = """""""""""""""""""""""""""""""""""""""""""########$$$$$$%%%%&&&&'''(()))**++,,-../001223456789:;<=>?@BCDFGHJKMNPRTUWY[]_acehjloq

Wyjście (w Matlabie): ( ans = \n\nnie jest częścią wyjścia, wyjście jest tylko ostatnim wierszem)

ans =

"""""""""""""""""""""""""""""""""""""""""""########$$$$$$%%%%&&&&'''(()))**++,,-../001223456789:;<=>?@BCDFGHJKMNPRTUWY[]_acehjloq

Rozwiązanie

[fix((0:.07/3:3).^4+34),'']

Zasadniczo patrzymy na tę funkcję, przekonwertowaną na wartości ASCII. wprowadź opis zdjęcia tutaj

wada
źródło
1
Czy mogą to być zmienne wartości y kwintyny?
LegionMammal978,
@ LegionMammal978 Nie rozumiem, co masz na myśli, ale ponieważ pytasz, myślę, że
równie
@ MartinBüttner Nie wiedziałem o tym ostatnim ograniczeniu, być może powinienem dodać do pytania.
flawr
1
+1 zaIt also works in Octave.
Conor O'Brien
4

R, 60 bajtów, pęknięty przez plannapusa

Wydajność:

0123456789ABCDEFGHTUVWXYZdefghijklmnopqrstuvw

Kod:

___(_(_:_____________]_____________6]_______s_4_____,___=___

Myślę, że to nie będzie takie trudne. Zobaczymy.

Faks
źródło
1
Pęknięty
plannapus
@plannapus Dobra robota! :)
Faks
4

Jolf , 27 znaków, Cracked by Adnan

________W___________--_____
                         |

odbitki

abcdefghijklmnopqrst

Interpreter .

Oryginalny kod:

on*2toHEWn)oH+H `pl$--$n}_H
on                          set n
  *2t                        to twenty
     oHE                    set H to the empty string
        Wn)                 while(n){
           oH+H             append to H
                `pl$--$n     get the nth character of the alphabet, decrement n before
                        }   }
                         _H print H reversed

Gratulacje dla Adnana! Przerażasz mnie.


Tutaj możesz przetestować swoje zgłoszenie, aby zobaczyć, ile znaków trzeba usunąć.

setInterval(function(){r=document.querySelector("textarea").value;document.getElementById("output").innerHTML=r.length/6-r.split("").filter(function(x){return x=="_"}).length|0},20)
*{font-family:Consolas,monospace}textarea{width:100%;resize:none;height:auto;min-height:1.2em;}b{color:red;}
<textarea>Example Program</textarea><div>You must reveal <b id="output">n</b> characters.</div>

Conor O'Brien
źródło
4

Fortran, 45 znaków, bezpieczny

Pełna wydajność:

 !"$)0<Ka|

Cat próbowała go tutaj złamać

Kod (45 znaków):

pr_gr_m____________________/___3____________

Kod programu:

program t;print*,(char(i**3/8+33),i=1,9);end

Alexander Vogt
źródło
@Cat Nie, nie pęknięty. Niepoprawny wynik: nie ma końca /!
Alexander Vogt
Oczywiście jestem ślepy, przepraszam.
kot
To spore wyzwanie. (Cóż, nie znam Fortranu, ale dość łatwo się go pozbyć)
kot
@cat Cieszę się, że ci się podoba ;-)
Alexander Vogt
4

PHP, 46 znaków, bezpieczny

Źródło:

for(_______________________=________________);

Zwraca ciąg znaków o długości 84 znaków:

!!"#$%&'()*+,-./0123456789::;<=>?@AABCDEEFGHIIJKLLMNNOPPQRRSTTUUVWWXXYYZZ[[\\]]^^__`

Wskazówka

Co powiedziałeś Moja kuzynka jest zaangażowana?

Ujawniony kod

Ta metoda jest stosunkowo prosta, ponieważ drukuje do 64 znaków od chr(32). Częścią zaciemniającą jest to, że iterator inie jest zwiększany liniowo. Jest zwiększany o własną wartość cosinus, co spowoduje powtarzające się i brakujące znaki.

for(;$i<64;)echo chr(32+$i+=cos(deg2rad($i)));
for(_______________________=________________);

wstawić nazwę tutaj
źródło
3

05AB1E , 13 znaków, pęknięty przez kwintopię

Jestem idiotą. Zapomniałem zaimplementować funkcję mocy (-_-。). Oto zaciemniony kod:

__D____<_____

Mój oryginalny kod to:

99DF2}r<F*}bR

Wyjaśnienie:

99DF2}r<F*}bR

99            # Pushes 99
  D           # Duplicates the top item
   F }        # Creates a for loop: For N in range(0, 99)
    2         # Pushes 2 (this will be done 99 times)
      r       # Reverses the stack
       <      # Decrement on the last item
        F }   # Creates a for loop: For N in range(0, 98)
         *    # Multiplies the last two item of the stack, which now looks like
              # [2, 2, 2, 2, 2, 2, 2, 2, ...]. Basically we're calculating 2^99
           b  # Converts the last item to binary
            R # Reverses the last item of the stack

Spowoduje to:

0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001

Tak, to jest 99 zer, po których następuje 1.


Uwaga : mam teraz zaimplementowaną funkcję zasilania. Można to zrobić w sześciu bajtach:

Y99mbR
Adnan
źródło
Czy jest wymawiane jak „Osabie”?
kot
3
@cat Niektórzy mówią „Osabie”, inni mówią „Użyteczne”, wszyscy mają poprawne haha ​​:)
Adnan
3
@Adnan Przepraszamy, zapomniałeś mnie. Mówię to jak „trzysta siedemdziesiąt jeden tysięcy, czterysta osiemdziesiąt sześć”;)
ev3commander
Liczba razy łańcuch nie działa jako powtórzenie łańcucha. :(
Conor O'Brien,
@ CᴏɴᴏʀO'Bʀɪᴇɴ Hehehe :) (dotyczy to przypadków, gdy sam łańcuch jest również liczbą, np. "4"3*= 12)
Adnan
3

Python 3.4, 127 znaków

To mój pierwszy post z miedziaków. Myślę / mam nadzieję, że nie jest to zbyt trudne ani zbyt oczywiste.

Zaciemniony kod:

_______inspect__________________getsource_____________________________________________print__________c*s_______________________

tworzy ten wynik (na początku jest 5 spacji; całkowita długość wynosi 7740 znaków):

     """"""""""""(((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))**********************...................................................................................................................;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;==============================[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccdddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiijjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnoooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooopppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppprrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrsssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttttuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
agtoever
źródło
3

Pyth, 17 znaków, złamany przez Pietu1998

Wydajność:

""''''''''''''''''''''0000000000111111111122222222223333333333XXXXXXXXXX[[[[[[]]]]]]

Kod:

___________#____1

Moje rozwiązanie:

Sjkm^dT%"'%#X"291

Rozwiązanie Pietu1998:

S`u]G6*T`t"#X0231
Luke
źródło
Pęknięty.
PurkkaKoodari
Naprawdę podoba mi się twój kod. Przez pewien czas myślałem o systemie szesnastkowym, ale nie wiedziałem wystarczająco dużo o formatowaniu napisów w Pythonie, aby uzyskać ten sam kod. (W szczególności #alternatywna forma była dla mnie nowa.)
PurkkaKoodari,
3

Malbolge, 254 znaki, złamane przez Adnana

Kod:

_____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ _____ __

Wydajność:

`AB\cd`

W pewien sposób oszukiwałem, umieszczając miejsce dla każdej szóstej postaci. No cóż...


Pęknięty kod Adnana:

('&%: ^"!65 4Xzyx w4-Qs rpo'K mlk"' ~Dfdc ba}v< ::8[Z XnVlq }0/mO ,*MbK JH^6# 4`C|0 ?U=Sw uPsaq L4on2 Mjjh, ged)c '<$$p ]!};Y WiVxS eRQ>= ).K]l Ij"Fh gfedc b,=;z L\q%H X3E2C /ng-k N*KJI 8%6#D ~2^Ai >g<<d tUr`6 oJ"!1 /|{CU f)d>b <A_^! \};Yj yUxTS dtsr` ML

Oryginalny kod:

bCBA@ ?>=<; :9876 54321 0/.-, +*)(' &%$#" !~}|{ zyxwv utsrq ponml kjihg fedcb a`_^] \[ZYX WVUTS RQPON MLKJI HGFED CBA@? >=<;: 9y165 43210 /.-,+ *)('& }C#"! ~wv<z \xwvu tsrqp onmlk jihgf e^$ba `_^W\ UyYXW VUTSR QPONM FKJIH GFEDC BA@9] =<;:9 27654 3210) M:

Oszukałem ponownie, używając generatora tekstu na Malbolge dla tego kodu.

Frederick
źródło
Pęknięty
Adnan
3

Mathematica 10.1, 98 znaków, bezpieczny

Dane wyjściowe są tutaj . Cały wynik ma 838,316 znaków i znak nowej linii.

Kod:

Print[""<>Chara__________________________________________________________________________________]

Tak, należy to uruchomić w wersji 10.1. (podpowiedź) Oryginalny program:

Print[""<>Characters@ToCamelCase@ExampleData@{"Text","DonQuixoteIEnglish"}~SortBy~ToCharacterCode]
LegionMammal978
źródło
Na początku zastanawiałem się, który standard ASCII zawiera sto tysięcy współrzędnych kodowych, ale teraz rozumiem,
cat
Od kiedy jest Mathematica za darmo?
mbomb007
@ mbomb007 Musisz zapytać Martina Buettnera.
LegionMammal978
@ LegionMammal978 nie ma takiej potrzeby. Możesz użyć chmury Wolfram .
user48538
3

MATL , 8 znaków, bezpieczny

Mamy nadzieję, że wkrótce będzie dostępna stabilna wersja kompilatora działającego w Octave. Tymczasem to zatwierdzenie GitHub działa , a w szczególności uruchamia oryginalny kod, który generuje wskazane dane wyjściowe

Zgłoszenie liczy się jako opublikowane 28 grudnia 2015 r., 15:30 UTC

Wydajność:

$**0016688??@HHQ

Kod (8 znaków):

_:______

Rozwiązanie

6:9tX*Sc

Co to robi:

6:9          % numeric vector [6 7 8 9]
t            % duplicate
X*           % Kronecker tensor product
S            % sort in ascending order 
c            % convert to char. Implicit display
Luis Mendo
źródło
4
Nie jestem pewien, czy jest to uzasadnione, ponieważ MATL wydaje się wymagać interpretacji Matlaba. ( meta.codegolf.stackexchange.com/a/7212/8478 )
Martin Ender
2
@cat Myślę, że pytanie brzmi, czy tłumacz działa w Octave.
Martin Ender,
1
@LuisMendo dobrze, zwykle zmiany interpretera po wyzwaniu są niedozwolone, ale ponieważ tak naprawdę nie wpływa to na działanie języka, wyjątek może być w porządku. Ostatecznie to wezwanie Stewiego. Myślę jednak, że przynajmniej termin na złamanie tego powinien zostać przedłużony.
Martin Ender
1
Tak, powinien być liczony jako nowo opublikowany. Jak myślisz, @StewieGriffin?
Luis Mendo
1
@Luis zgadzam się. Może być liczony jako nowo opublikowany. :-)
Stewie Griffin
2

Labirynt , 5 bajtów, Pęknięty przez Adnana

_____

odbitki

000000

Mój oryginalny kod to:

<!!@ 

Zwróć uwagę na spację końcową.

Przypuszczam, że powinienem był wybrać więcej postaci i ujawnić jedną z nich !, ponieważ rozwiązanie Adnana rośnie tylko liniowo, gdy dodajemy więcej !, podczas gdy moje rośnie kwadratowo.

Martin Ender
źródło
2
Pęknięty
Adnan
2

PHP, 28 znaków

<?=________________________;

Zwraca ciąg

abcdefghijklmnopqrstuvwxyz
Niet the Dark Absol
źródło
3
Należy dodać, że to zostało złamane.
LegionMammal978,
3
@ LegionMammal978 Skąd OP wiedziałby, że jeśli usuniesz swój komentarz prowadzący do crack?
Martin Ender,
4
@ MartinBüttner Mój crack był duplikatem.
LegionMammal978
2

ES6, 17 znaków, cracked przez Cᴏɴᴏʀ O'Bʀɪᴇɴ

__=____=_________

Jest to funkcja, która zwróci ciąg

11233
Neil
źródło
Zakładam, że masz na myśli JavaScript?
Conor O'Brien,
Pęknięty?
inserttusernamehere
FYI oryginalny kod to(i=106)=>i*i-3+''
Neil
2

JavaScript, 83 znaki, Pęknięty przez Martina Büttnera

Wydajność

Hi~~~

Kod

_=____r____=u____=__s__=_________=__________________u_______A__________e______"_~_"

Dane wyjściowe znajdują się w konsoli JS przeglądarki takiej jak Chrome / Firefox.
Oryginalny kod (który może być nieprawidłowy):

q=w=e=r=t=y=u=i=o=p=s=d=f=g=h=j=k=l=z=x=c=v=b=n=m="Huh"[0]+"Alarms in here"[7]+"~~~"
ev3commander
źródło
Pęknięty?
Martin Ender,
2

JavaScript ES6, 134 znaki

Hej chłopcze, było fajnie. Powodzenia!

_=_=_____l____.______.________(___}__;___=______ru____"_____+_[________]______!____]__[_________e________.__U_________)__________\_____

Wyjścia:

((((((()))))))+...000000000000000000002233=>AAAAAAAAAAABBBBBCCCCCCCCCCCCCCCCCCDDDDDDDEEEEEEEEEEEEEEEEEEEFFFFFFFGHIIIIIIIIIIIIIIIIJJJJLLMMNNNNNNNNNNNNNNNNNNNNNNNNNOOOOOOOOOOOOOOOOOOOOOOPRRRRRRRSSSSTTTTTTTTTTTTTTTTTTTTTTTUUUUUUUUUVVVVVVXXY[[[[[[[[]]]]]]]]````ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeffffffffffffffffffffffffffffffffffffffffffffffffffffffffiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiinnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu{{{{{{}}}}}}
Conor O'Brien
źródło
2

CJam, 12 znaków, Cracked przez jimmy23013

Wydajność

#$%&'()*+,-./:;<=>?@[\]^_`

Kod

_:____#_____
Dennis
źródło
Pęknięty .
jimmy23013,
2

Python 3, 58 znaków, złamany przez Mitcha Schwartza

Kod:

______________print(_______(_______________________)_____)

import string; print (''. join (sorted (string.printable)) [5:])

Wydajność:

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~
409_Konflikt
źródło
Pęknięty .
Mitch Schwartz
Och, czekaj, komentarz Mitcha nigdy do mnie nie załadował ... to mnie naprawdę smuci.
kot
2

Befunge, 11 znaków, spękany (w funge-98) przez MegaTom

Wydajność:

1223788

Zaciemniony kod:

________.__

Wszystko w jednym wierszu, ponieważ zasady zabraniają wprowadzania nowych wierszy. Testowane przy użyciu http://www.quirkster.com/iano/js/befunge.html .

Edycja: Jest to legalnie złamane, ponieważ nie określiłem wersji, ale zauważ, że wciąż istnieje rozwiązanie Befunge-93.

histocrat
źródło
Pęknięty
MegaTom,
2

Perl 5, 30 bajtów, złamany przez Adnana

Kod:

print_________________________

Wydajność:

9:;@AFGHLMNRSTYZ_`a

Pęknięty:

Adnan znalazł trywialny trzask : oczywiście nie pomyślałem o tej układance wystarczająco dobrze. Zamiast tego skomponowałem inny .

msh210
źródło
2

Python 2, 62 znaki, Cracked przez Adnan

______________________________________________________________
         | |   ||                  |  |  ||

To wygląda trochę jak stół.

To wyprowadza ciąg abcde.

Kod Adnana:

print "ab_c_de___".replace("_","")#___________________________

Mój kod:

f=lamda _,__,___:"abcde"+'f'*sum(_,__,___)*000;print f(1,2,3);

Rɪᴋᴇʀ
źródło
Pęknięty
Adnan
Mogę używać komentarzy, prawda?
Adnan
Nie wiem Powiedziałem szczególnie, że kiedy go opublikowałem, nie było żadnych komentarzy. Nie wiem jednak, czy dam radę. Skomentowałem PO i zapytałem. Zobaczymy co on powie.
Rɪᴋᴇʀ
1
Nie możesz używać komentarzy (ale złodzieje mogą używać komentarzy podczas łamania kodu) (CC @Adnan)
Dennis
Awww. @Rikerw jest teraz smutny.
Rɪᴋᴇʀ