สับสนกับ Hello World


123

สร้างโปรแกรมที่สับสนที่สุดที่สั้นที่สุดที่แสดงข้อความ "Hello World"

เพื่อที่จะได้รับการพิจารณาเป็นโปรแกรมที่ปกปิดก็จะต้องตอบสนองอย่างน้อยสองของความต้องการต่อไปนี้:

  • ไม่ได้มีตัวละคร: h, l, wและdในกรณีใด ๆ
  • ไม่ได้มีตัวละคร: e, o, r, 0และ1ในกรณีใด ๆ
  • ไม่มีอักขระ: 2หรือ7

อินพุต:
ไม่มี

เอาท์พุท:
Hello World


6
ฉันเดาว่าimportเป็นงูหลามไม่ได้รับอนุญาต
Alexandru

26
กฎเหล่านี้ใช้กับคำหลักภาษาด้วยหรือไม่
hallvabo

8
เป็นข้อ จำกัด ที่ไม่รู้สึกตัวหรือไม่
oenone

20
มีคนอธิบายได้ไหมว่าเพราะเหตุใด 2 และ 7 จึงไม่ได้รับอนุญาต ฉันแค่อยากรู้อยากเห็นเพราะฉันไม่เห็นว่าทำไมเลือกเหล่านั้นโดยเฉพาะ
Thomas Eding

4
@trinithis และอื่น ๆ อักขระ ASCII 72เป็น"H"ซึ่งเป็นเหตุผลที่ผมเลือกทั้งสอง
เควินบราวน์

คำตอบ:


51

GolfScript, 17 ตัวอักษร

· S““?? SS ????“> '{~}%

เมื่อทดสอบการส่งนี้โปรดบันทึกไฟล์เป็นไบนารี่ตรงไม่ใช่ UTF-8 มีปัญหาในการสร้างไฟล์ใหม่? นี่คือ hexdump ของมัน:

00000000  27 b7 9a 93 93 90 df a8  90 8d 93 9b 27 7b 7e 7d  |'...........'{~}|
00000010  25                                                |%|

1
แม้ว่าฉันจะคิดว่ามันเป็นทางออกที่ชัดเจนหากคุณไม่ชัดเจนเกี่ยวกับการทำงานของรายการนี้คุณสามารถอ่านสปอยเลอร์นี้: chat.stackexchange.com/transcript/message/442257#442257 :-)
Chris Jester -Young

12
ไม่ใช่ ISO-8859-1 จริง ๆ แล้วมันเป็น Windows-1252
Konrad Borowski

@GlitchMr: จริง ๆ แล้วฉันค่อนข้างมั่นใจว่าการส่งประกอบด้วยอักขระที่อยู่นอก Windows-1252 ด้วย ;-)
Chris Jester-Young

@xfix จริงๆแล้วมันไม่ใช่ Windows-1252 เหมือนกัน แม้ว่า Windows-1252 จะมีอักขระที่ถูกต้องมากกว่า ISO-8859-1 แต่รายการของฉันมีอักขระเช่น 0x8D และ 0x90 ซึ่งไม่ถูกต้องใน Windows-1252
Chris Jester-Young

ยุติธรรมพอลืมว่าตัวละครบางตัวไม่ได้รับอนุญาตใน Windows-1252
Konrad Borowski

171

Perl

เนื่องจากคำตอบที่ชัดเจนใช้การเปลี่ยนแปลงบางอย่างฉันรู้สึกว่าต้องโพสต์สิ่งที่ใช้Acme :: EyeDropsอย่างไรก็ตามด้วยพลังพิเศษที่ฉันคิดว่าฉันควรจะสนุกขึ้นอีกหน่อย

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

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

                            ';'.('`'|',').
                        ('`'|'!').('['^    '('
                    ).('['^'/').(('{')^        '['
                 ).('`'|')').("\`"|    (          '&'
              )).'\\'.'$'.('`'|"\*").                '='
            .'='.'\\'.'@'.('`'|"\#").                  (((
          '\\'))).'}'.('['^'+').('['^  (                 ')'
         )).('`'|')').('`'|'.').('['^   (                 '/'
       )).'\\'.'"'.'\\'.'\\'.('`'      |+                   '.'
      ).'\\'.'"'.('!'^'+').'"'.'}'.   ')'                    );(
     $:)='.'^'~';$~='@'|'(';$^=')'^                           '['
    ;$/='`'|'.';$,='('^'}';$\="\`"|                            '!'
   ;$:=')'^'}';$~='*'|'`';$^=('+')^                             '_'
   ;($/)    ='&'|'@';$,='['&'~';$\                              =((
  "\,"))^    '|';$:  ='.'^'~'; $~                                =((
  '@'))|     "\(";    $^=')'^                                    '['
 ;($/)=      '`'|       '.';$,                                    =((
 '(')        )^+         '}';$\                                   =((
'`')          )|          "\!";      (           (                 $:)
)=')'         ^+        (   (         (                   (        '}'
))));          (           (          (                            $~)
))=(                    (   (    (        (                        '*'
))))                     )   |  ((      (                          '`'
)))                      ;     $^=         (                       '+'
)^+                       ((    ((  ((     '_'                     )))
)))                                          ;($/)                 =((
'&'                          ) )               |'@';               $,=
'['                                                                &((
 '~'                                      ))   ;                  $\=
 ','                                  ^"\|";  $:                  =((
  '.'                               ))^"\~"; $~=                 '@'
  |((                              '('));$^=')'^       (         '['
   );(                          $/)='`'|"\.";$,=    (           '('
   )^+                         '}';$\='`'|'!';$:                =((
    ')'                        ))^'}';$~='*'|'`'               ;$^
     =((                       '+'))^'_';$/='&'               |((
      '@'                      ));$,   =('[')&               '~'
       ;$\                              =','^               '|'
         ;$:                              =(      ((      '.'
          )))                                   ^+       '~'
            ;$~                               =(       '@'
              )|+                                    '('
                 ;$^                              =((
                    ')'                        ))^
                        '['                ;$/
                            ='`'|('.');#;#

ข้อแม้

ตั้งแต่ Perl เวอร์ชัน 5.18 กลไกที่อนุญาตให้โค้ดนี้รันนั้นมีประสิทธิภาพมากจนถูกปิดใช้งานโดยค่าเริ่มต้นเพื่อป้องกันการใช้งานในทางที่ผิด ดังนั้นในรุ่น 5.18+ คุณสามารถเพิ่มuse re 'eval';ไปด้านบนของสคริปต์หรือหากสคริปต์ที่เป็นชื่อคุณสามารถเรียกใช้มันเหมือนworld.pl perl -Mre=eval world.plเป็นเรื่องน่าเสียดายที่ต้องเพิ่มตัวละครที่น่าเกลียดเหล่านี้ลงไป แต่ c'est la vie (หมายเหตุ: ฉันต้องการเน้นว่าการเปิดใช้งานคุณลักษณะนี้ไม่ได้ใช้ไลบรารีหรือส่วนเสริมบางส่วนรหัสที่แสดงนั้นเป็นรหัส Perl ที่ถูกต้องกลไกจะไม่เปิดใช้งานตามค่าเริ่มต้นอีกต่อไป)


1
ฉันลองแล้วมันก็เยี่ยมมาก! +1
โทมัส

2
@TomasT ขอบคุณมันสนุกที่จะทำและจริง ๆ แล้วมันใช้เวลาเล่นกอล์ฟเพื่อที่จะให้ทำงานใน 3 รูปเท่านั้น!
Joel Berger

1
FYI มันใช้คุณสมบัติ Perl regexp (?{ code })เพื่อประเมินรหัส Perl ที่กำหนดเองในขณะที่การจับคู่ regexp รหัส Perl ที่กำหนดเองพิมพ์ข้อความ เป็นเรื่องที่ดีเพราะมันไม่ได้ละเมิดกฎใด ๆ
pts

5
คุณเป็นราชาของโลกสวัสดี!
recursion.ninja

1
ว้าว! แค่ว้าว! ตอนนี้ฉันต้องเรียนรู้ Perl เพื่อดูว่าคุณทำสิ่งนั้นในโลกนี้อย่างไร
กริฟฟอน

69

C # (175 ตัวอักษร)

มันค่อนข้างท้าทายในการทำเช่นนี้ใน C # เนื่องจากข้อ จำกัด ขัดขวางการใช้คำหลักทั่วไปค่อนข้างมาก เป็นไปได้ใน C # ที่จะใช้ \ uxxxx Unicode escape ในตัวระบุ แต่น่าเสียดายที่ไม่ได้อยู่ในคำหลัก

ฉันสงสัยว่าโซลูชันนี้จะทำงานเฉพาะเมื่อรวบรวมกับ. NET 4.0 ดูคำอธิบายว่าทำไม

using System;struct a{static int Main(){object[]c={"\u0048e\x6c\x6co "+(C\u0068ar)(86+1)+"or\x6c\x64"};typeof(Conso\u006ce).GetMet\u0068o\u0064s()[101].Invoke(c,c);return 0;}}

คำอธิบาย

// I won’t be able to get anywhere without using “System”.
// Even if I write it as “Syst\u0065m”, it still violates rule 2.
// Therefore, that is the rule we’ll violate.
using System;

// Thus, we can’t use: H L W D 2 7
// We can’t write “class”, so the Main type must be a struct.
struct a
{
    // We can’t write “void”, so Main needs to return an int.
    static int Main()
    {
        // We can’t write “new”, but we can instantiate an array
        // using the initialisation syntax.
        object[] c = {
            "\u0048e\x6c\x6co " + (C\u0068ar) (86 + 1) + "or\x6c\x64"
        };

        // We can use the character escape sequence to write “Console”, but not
        // “Write” because W is \u0057, which contains a 7. Therefore, we have to
        // use Reflection to get it. This relies on the fact that Console.Write(string)
        // is the 102nd method of the type Console in my copy of the framework.
        // Also, the first argument to Invoke can be anything for a static method
        // (needn’t be null). The second one is the actual argument to Console.Write.
        typeof(Conso\u006ce).GetMet\u0068o\u0064s()[101].Invoke(c, c);

        // Since Main returns int, we have to return something.
        return 0;
    }
}

คุณสามารถใช้Uriแทนสำหรับobject bคุณสามารถใช้\xHHในสตริงแทนที่จะ\u00HHไม่คลุมเครือ ( \xคือความยาวผันแปร) ในความคิดที่สองคุณไม่จำเป็นbเลยและสามารถนำมาใช้ใหม่cเป็นอาร์กิวเมนต์แรกInvokeได้ MSDN ระบุว่าสำหรับวิธีการคงที่อาร์กิวเมนต์แรกจะถูกละเว้น นี่นำมาซึ่ง 175 สำหรับฉัน
Joey

@ Joey: โอ้โหขอบคุณ! แต่ถ้าอาร์กิวเมนต์แรกที่จะInvokeได้อะไรก็ต้องไม่ได้cก็อาจจะ0... :)
Timwi

ใช่สังเกตเห็นว่าเมื่อฉันพยายามที่จะอินไลน์c(ซึ่งน่าเศร้าไม่ทำงานตั้งแต่newต้องใช้eและ.Split('x')ยาวเกินไป (ออกที่ 177)
Joey

ฉันไม่รู้ว่ามันเป็นไปได้ +1
Igby Largeman

1
GetMethodsสิ่งที่ฉลาดมากกับคุณได้ด้วย +1
Soham Chowdhury

51

BrainFuck, 106 จังหวะ

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

ตรงตามกฎทั้งหมดและจะแน่ใจว่า obfuscated


2
ฉันคิดว่าฉันยังสามารถตีกอล์ฟลงได้เล็กน้อย แต่นั่นจะต้องรอจนกว่าฉันจะนอนหลับ
R. Martinho Fernandes

34
BrainFuck ไม่สับสนตามคำจำกัดความหรือไม่?
mbx

18
โปรแกรมเมอร์ BF มีอำนาจจะสามารถที่จะรับรู้นี้ ...
Mehrdad

สิ่งนี้จะทำลายทั้งกฎ 1 และ 2: D
Thomas Eding

8
Brah ได้รับการปกป้องโดยชุมชนไม่ว่า++++++++++[>++++++>+++<<-]>++++++++++++.---.+++++++..+++.>++.<++++++++.--------.+++.------.--------.จะเป็นเพียง 100 จังหวะเท่านั้นเหมืองของฉันดีกว่าของคุณ
OverCoder

44

Javascript, 2595

นี่แค่แบ่งกฎ 2

゚ω゚ノ=/`m´)ノ~┻━┻//*´∇`*/['_'];o=(゚ー゚)=_=3;c=(゚Θ゚)=(゚ー゚)-(゚ー゚);(゚Д゚)=(゚Θ゚)=(o^_^o)/(o^_^o);(゚Д゚)={゚Θ゚:'_',゚ω゚ノ:((゚ω゚ノ==3)+'_')[゚Θ゚],゚ー゚ノ:(゚ω゚ノ+'_')[o^_^o-(゚Θ゚)],゚Д゚ノ:((゚ー゚==3)+'_')[゚ー゚]};(゚Д゚)[゚Θ゚]=((゚ω゚ノ==3)+'_')[c^_^o];(゚Д゚)['c']=((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)-(゚Θ゚)];(゚Д゚)['o']=((゚Д゚)+'_')[゚Θ゚];(゚o゚)=(゚Д゚)['c']+(゚Д゚)['o']+(゚ω゚ノ+'_')[゚Θ゚]+((゚ω゚ノ==3)+'_')[゚ー゚]+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+((゚ー゚==3)+'_')[゚Θ゚]+((゚ー゚==3)+'_')[(゚ー゚)-(゚Θ゚)]+(゚Д゚)['c']+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+(゚Д゚)['o']+((゚ー゚==3)+'_')[゚Θ゚];(゚Д゚)['_']=(o^_^o)[゚o゚][゚o゚];(゚ε゚)=((゚ー゚==3)+'_')[゚Θ゚]+(゚Д゚).゚Д゚ノ+((゚Д゚)+'_')[(゚ー゚)+(゚ー゚)]+((゚ー゚==3)+'_')[o^_^o-゚Θ゚]+((゚ー゚==3)+'_')[゚Θ゚]+(゚ω゚ノ+'_')[゚Θ゚];(゚ー゚)+=(゚Θ゚);(゚Д゚)[゚ε゚]='\\';(゚Д゚).゚Θ゚ノ=(゚Д゚+゚ー゚)[o^_^o-(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ+'_')[c^_^o];(゚Д゚)[゚o゚]='\"';(゚Д゚)['_']((゚Д゚)['_'](゚ε゚+(゚Д゚)[゚o゚]+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚Θ゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚)+(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+(゚ー゚)+(゚Д゚)[゚ε゚]+((゚ー゚)+(゚Θ゚))+(c^_^o)+(゚Д゚)[゚ε゚]+(゚ー゚)+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚Θ゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+((゚ー゚)+(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚ー゚)+(c^_^o)+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)-(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+((゚ー゚)+(o^_^o))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((o^_^o)+(o^_^o))+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+(゚Θ゚)+((゚ー゚)+(゚Θ゚))+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚Θ゚)+(゚ー゚)+(゚ー゚)+(゚Д゚)[゚ε゚]+(゚ー゚)+((o^_^o)-(゚Θ゚))+(゚Д゚)[゚ε゚]+((゚ー゚)+(゚Θ゚))+(゚Θ゚)+(゚Д゚)[゚o゚])(゚Θ゚))('_');

13
ฉันลองใช้ UglifyJS บนมัน แต่มันบันทึกได้ -2574 ไบต์
Konrad Borowski

12
ฉันไม่รู้ว่าฉันกำลังดูอะไรอยู่ที่นี่
Bob

6
@Bob = Javascript ที่สับสน คำแนะนำ: มันเริ่มต้นด้วยการกำหนดนิพจน์ปกติ (คือ '/` m´) ノ ~ ┻━┻ /') ให้กับตัวแปรที่มีชื่อ `゚ ω ゚ ノ. That's followed by a comment and the expression ['_']` ในบริบทที่เป็นโมฆะ จากนั้นตัวแปรo(พร้อมด้วย_และ(゚ー゚)) จะถูกกำหนดค่า 3 มันยังคงดำเนินต่อไปในหลอดเลือดดำนั้นทำผลงานที่ไม่เป็นอันตรายเป็นพิเศษจำนวนมากซึ่งไม่มีประสิทธิภาพและใช้วิธีอ้อมไปทำงานที่ตั้งใจ (การเรียกalert("Hello world")) ในลักษณะที่ไม่ชัดเจน แฟชั่น.
Mark Reed


40

Befunge-93 - บล็อก 10x9

va:)/v<>#<
9A:)."c:P^
>"iqwt\%"^
bv"Mjq"<.<
c>v<-"x^x]
(C:,3>>^:(
$,9^;)|:O]
>5-^-.--.-
^<_#?>@_@<

ขอโทษ : D

ฉันไม่ได้ไปที่ขนาดเล็กที่นี่ฉันพยายามOBFUSCATEรหัสจริง ๆโดยรวมใบหน้ายิ้มและเสียงรบกวนให้มากที่สุด! : D

ควรปฏิบัติตามกฎข้อ 2 และ 3


18
"@_@" ฉันหัวเราะ.
Wug

35

Golfscript - 17 ตัวอักษร

คัดลอก / วางได้ง่ายกว่าของ Chris

'Ifmmp!Xpsme'{(}%

โดยทั่วไปตัวเลขซีซาร์เปลี่ยน 1 ถ่าน


4
+1 ดีสำหรับการคัดลอกที่ง่ายกว่า Mine มีข้อได้เปรียบในการทำลายกฏกติกาและนอกจากนี้ (อาจขึ้นอยู่กับว่าตัวอักษรบิตสูงถือเป็นสัญลักษณ์) การทำสัญลักษณ์กอล์ฟด้วย :-)
Chris Jester-Young

สิ่งนี้จะทำลายกฎได้อย่างไร
d -_- b

11
@sims มันมีeอยู่ในนั้น
gnibbler

2
สองในสาม : D
Rob

30

หลาม

Rule I & III (34 ตัวอักษร)

print'Uryyb Jbeyq'.decode('rot13')

Rule I & III ทางเลือก (39 ตัวอักษร)

print"\110e\154\154o %cor\154\144"%~-88

Rule II & III (37 ตัวอักษร)

input("H\x65ll\x64 W\x64%cld"%(3*38))

กฎ I และ II (50 ตัวอักษร)

input('\x48\x65\x6c\x6c\x6f \x57\x6f\x72\x6c\x64')

ทั้งสามกฎ (58 ตัวอักษร)

input("\x48\x65\x6c\x6c\x6f %c\x6f%c\x6c\x64"%(84+3,3*38))

1
ลบคำตอบของฉันฉันคิดว่าคุณมีความครอบคลุมมากขึ้น
st0le

+ 1 ชิ้นที่ยอดเยี่ยม แต่ไม่แปลกใจที่ฉันเห็นคุณเล่นกอล์ฟ :-)
Quixotic

คุณต้องดำเนินการimport codecsก่อนcodecs.decode
แมว

คุณสามารถลบ parens ในโซลูชันแรก
Cyoce

23

JavaScript, 366 ตัวอักษร

หลังจากเห็นวิธีการแก้ปัญหา Perl ของ Joel Berger ฉันรู้สึกว่าถูกบังคับให้ทำศิลปะ ASCII ที่น่าสนใจด้วยตัวเอง ... JavaScript, ไม่ใช้ตัวอักษรและตัวเลขและตรงกันข้ามกับเอาต์พุต JSFuck ซึ่งมีขนาดที่เหมาะสมจริง ๆ

                   $$
                  =-~-
                 ~[];$_
                =$$+ $$;
               _$=$$+$$+-
              ~[];_=-~[];$
             =!![]+[];__={}
            +[];$$_=/\\ /+[]
           _$$=(![]+[])[_]+(!
          []+[])[$$]+$[$_+~[]]
         +$[_]+$[+[]];$=__[_$]+
        __[_]+($[$]+[])[_]+(![]+
       [])[$_+~[]]+$[+[]]+$[_]+$[
      $$]+__[_$]+$[+[]]+__[_]+$[_]
     _=$$_[_]+-~[];$[$][$](_$$+'("'
    +_+-~[]+-[]+_+$_+_$+_+_$+$_+_+_$
   +$_+_+_$+[$$+_$]+$$_[-~[]]+$_+-[]+
  _+$$+[$$+_$]+_+_$+[$$+_$]+_+[$$+$_]+
                $$+ _+_$
                +$_+_+$_
                +$_+'")'
                  )($)

คุณช่วยกรุณาแสดงจำนวนตัวอักษรในรหัสของคุณในส่วนหัวได้หรือไม่? ฉันอยากรู้เพื่อดูวิธีการมากมายที่คุณได้ไป ...
WallyWest

@ Eliseod'Annunzio ไปแล้วฉันลืมไปเลยว่านี่คือโค้ดกอล์ฟ ความยาวถูกกำหนดด้วยช่องว่างที่ถูกถอดออกและ($)กลายเป็นครั้งสุดท้าย()(เพราะฉันเพิ่ม$สำหรับความสมมาตร)
FireFly

ขอบคุณสำหรับเคล็ดลับของคุณ ... ฉันต้องลดขนาดรหัสของฉันออกไปเป็น "W" แล้วย่อมันลงโดยใช้คำแนะนำของคุณ ...
WallyWest

21

rot13 - 11 ตัวอักษร

Uryyb Jbeyq

2019/2/12: คำตอบนี้จะถูกเก็บไว้ด้วยเหตุผลทางประวัติศาสตร์และไม่ได้เป็นคำตอบที่ถูกต้องภายใต้กฎเว็บไซต์ปัจจุบัน


3
rot13 เป็นภาษาหรือไม่? : /
Santosh Kumar

3
ใช่และฉันสามารถสร้างล่ามได้: P
oddcoder

6
เทคนิค ROT13 เป็นเพียงตัวเลข มันมีมากเหมือนกันกับไฟล์เสียงของVigenère
XiKuuKy

19

Bash, 30 25 ตัวอักษร

tr G-t F-s<<<Ifmmp\ Xpsme

ด้วยการขอบคุณ Peter Taylor สำหรับการใช้งานนอกรีต


2
คุณสามารถบันทึกอักขระได้ 5 ตัวโดยใช้สตริงที่นี่:tr G-t F-s<<<Ifmmp\ Xpsme
Peter Taylor

18

สกาลา, 39

วิธีแก้ปัญหาเช่นพิมพ์ ("Qnuux)` x {um "แผนที่ (_- 9 toChar)) (35 ตัวอักษร) ตกผิดกฎ 1 และ 2 (" toChar "มีทั้ง" h "และ" r ") ซึ่งทำให้ ยากสักหน่อย

ในที่สุดก็เกิดขึ้นกับสิ่งนี้:

print("䠀攀氀氀漀 圀漀爀氀搀"map(_.reverseBytes))

ข้อเสนอแนะสำหรับการปรับปรุงการต้อนรับ


18

TeX, 95 ไบต์

แบ่งกฎข้อที่สาม

\^^5pp^^%^^2^^#^^!^^3^^%{^^(}^^%^^,^^,^^/
\^^5pp^^%^^2^^#^^!^^3^^%{^^7}^^/^^2^^,^^$!
\^^%^^.^^$

รันด้วยtex filename.texเพื่อรับเอาต์พุต dvi หรือpdftex filename.texเพื่อรับ pdf


1
ว้าวไม่เคยรู้เลยว่า TeX อาจงงมาก!
gar

14

> <> , 2 × 20 = 40 ตัวอักษร

'mu{x`)xuunQ'>9-o?v;
            ;^?o-9< 

oไม่ละเมิดกฎข้อที่สองตั้งแต่ผมสามารถส่งออกเป็นตัวละครโดยไม่ต้องใช้


11

Windows PowerShell, 91 95 97 98

($OFS='')+('Qnuux)`x{um'|% t*y|%{"[convert]::"+([convert]|gm -s t*r).name+"($($_-9))"|iex})

ละเมิดกฎข้อที่สองเท่านั้น

มันชั่วร้ายมากที่charละเมิดกฎสองข้อด้วยตัวเองแล้ว

แล้วก็อันนี้ยากที่จะทำงาน

  • บรรทัดแรกตั้งค่า$OFSเป็น''ดังนั้นเมื่อเลือกอาเรย์เป็นสตริงจะไม่มีช่องว่างปรากฏระหว่างรายการ
  • การคัดเลือกให้charเป็นจริงเป็นส่วนที่ยากที่สุดของทั้งหมดและฉันใช้เวลาทั้งวันเพื่อค้นหาวิธี ฉันได้รับส่วนที่เหลือทั้งหมดทำงานได้เป็นอย่างดี แต่เมื่อฉันทำการคำนวณพวกเขาฉันมีints ไม่ใช่chars การวางสายเหล่านั้นกลับมาในสตริงนั้นค่อนข้างยาก
  • ฉันพบวิธีการเรียกใช้Invoke-Expressionโดยไม่จำเป็นต้องมีe:

    &(gcm i?x)
    

    แต่นั่นก็ยังขาดข้อโต้แย้ง และฉันได้ทิ้งเป้าหมายของฉันในการทำให้กฎทั้งสามนั้นเรียบร้อยแล้ว charนอกจากนี้มันไม่ได้โดยเฉพาะอย่างยิ่งช่วยในการส่งไปยัง

  • ย่อลงเล็กน้อยด้วย PowerShell เวอร์ชั่นใหม่ ไม่มีวิธีการสร้างผลลัพธ์ที่มีประโยชน์แตกต่างกันออกไป แต่น่าเศร้า


ยังมี "o" s และ "e" s อยู่ที่นี่อีกมากมายและ "r" ไม่แน่ใจเหมือนกันว่าฉันจะโชคดีกว่านี้ในการทำความสะอาด อาจจะต้องให้มันยิงในบางครั้ง
Iszi

เพิ่งอ่านกฎใหม่ - ต้องพบกับกฎสองในสามชุดเท่านั้นและสิ่งนี้มีคุณสมบัติ แสดงที่ดี! จะดีกว่านี้ถ้าเราสามารถหาอันที่ 3/3 ได้ แต่ฉันสงสัยว่ามันเป็นไปได้มาก
Iszi

พาฉันมีเวลามากพอที่จะไปถึงจุดนี้แล้วและฉันก็ยังสงสัยว่าเป็นไปได้ที่จะทำตามกฎทั้งหมด
Joey

10

PHP (16 ไบต์)

ฉันสังเกตเห็นว่าตัวอย่าง PHP ก่อนหน้านี้ของฉันนั้นไม่ได้ทำให้งงงวยมากพอดังนั้นเรามาดูตัวอย่างที่ทำให้มึนงงมากขึ้น (คำเตือนการทำให้งง!) นอกจากนี้การคัดลอกตัวอย่าง GolfScript โจ๋งครึ่มยกเว้นทำให้มันเล็กลง (มันเป็นไปได้หรือไม่?) รายการนี้ต้องการ PHP 5.4 หรือshort_open_tagเปิดใช้งาน ไม่มีกฎใดเสียหายขณะทำสิ่งนี้ อันที่จริงรายการนี้ไม่มีตัวอักษรหรือตัวเลข ASCII ใด ๆ

ตัวอย่างนี้ไม่ผิดกฎใด ๆ มีความสุข. หากต้องการสร้างไฟล์ให้เรียกใช้คำสั่งต่อไปนี้

printf "<?=~\xb7\x9a\x93\x93\x90\xdf\xa8\x90\x8d\x93\x9b;" > obfus.php

หรือในกรณีที่คุณไม่เชื่อถือในการใช้printfคำสั่งฉันได้เตรียม Base64 dump ของไฟล์

PD89freak5OQ36iQjZObOw==

หากคุณคิดว่าทั้งสองวิธีในการสร้างมันเป็นการฝ่าฝืนกฎฉันก็สร้างไฟล์บน Dropboxเช่นกัน

และจะเรียกใช้มัน

php obfus.php

ไฟล์ผลลัพธ์ควรมีขนาด 16 ไบต์ ขอให้สนุกกับการวิ่ง โปรดทราบว่าหากคุณE_NOTICEเปิดใช้งานคำเตือนระบบจะแสดงการแจ้งเตือน เพียงแค่เพิกเฉยการแก้ไขจะทำให้เสียเปล่าตัวละครสองตัวตัวละครตัวหนึ่ง (ฉันสามารถใช้@โอเปอเรเตอร์หลังจากทั้งหมด) และจะทำให้ Base64 ที่เป็นผลลัพธ์ดูยอดเยี่ยมน้อยลง


9

ช่องว่าง (167 ตัวอักษร)

ในการรับโปรแกรม WS ให้แทนที่อักขระ Space, Tab หรือ Linefeed สำหรับ S, T, L ตามลำดับในสตริงต่อไปนี้:

SSSTSSTSSSLTLSSSSSTTSSTSTLTLSSSSSTTSTTSSLTLSSSSSTTSTTSSLTLSSSSSTTSTTTTLTLSSSSSTSSSSSLTLSSSSSTSTSTTTLTLSSSSSTTSTTTTLTLSSSSSTTTSSTSLTLSSSSSTTSTTSSLTLSSSSSTTSSTSSLTLSSLLL

หรือดาวน์โหลด "ดิบ" ช่องว่างเท่านั้นโปรแกรมในข้อความไฟล์hello.ws

เมื่อดำเนินการโดยล่าม WSนี้โปรแกรมนี้จะพิมพ์ "Hello World"

คำอธิบาย (ละเว้นช่องว่างที่นี่!):

SSS TSSTSSSL TLSS  <-- output H (ascii code 72 in decimal, 1001000 in binary) 
SSS TTSSTSTL TLSS  <-- output e (ascii code 101 in decimal, 1100101 in binary) 
SSS TTSTTSSL TLSS  <-- etc
SSS TTSTTSSL TLSS
SSS TTSTTTTL TLSS
SSS TSSSSSL TLSS
SSS TSTSTTTL TLSS
SSS TTSTTTTL TLSS 
SSS TTTSSTSL TLSS 
SSS TTSTTSSL TLSS
SSS TTSSTSSL TLSS 
LLL                <-- end the program

สตริง "middle" (เช่นTSSTSSSL) คือรหัส ascii (เป็นเลขฐานสองที่มีSdenoting 0, Tdenoting 1) สำหรับตัวอักษรที่ต่อเนื่องใน "Hello World" คำนำหน้าSSSผลักดันจำนวนที่ตามมา (ยกเลิกโดยL) ลงบนสแต็ก TLSSส่งออกอักขระที่มีรหัส ASCII อยู่ด้านบนของสแต็ก ในที่สุดตามบทช่วยสอนนี้โปรแกรมจะต้องจบด้วยLLLการออกจากการทำความสะอาดโดยล่าม

หมายเหตุ: ฉันกำลังป้อนคำตอบนี้เป็นคำตอบแยกต่างหากเนื่องจากรายการโปรแกรม WS อื่น ๆ เป็นโปรแกรม 1287 ตัวอักษรที่พิมพ์ "Hello, world of space!" แทน "Hello World" ที่ต้องการ



7

C, 160 ตัวอักษร

ใช้งานได้กับเครื่องจักรขนาดเล็กที่มี 4 ไบต์เท่านั้น:

main(){int a='a',b=a/a,c=b+b,f=c+c,g=f+f,i=g+g,j=i*i,k=j*j,m=a+g+b+c,n=m+b+c;int p[]={a+g-b+(a+f)*j+m*k*(j+b),n+i*c*j+k*(n+g+n*j),a+i+b+m*j+(a+f-b)*k};puts(p);}

เป็นไปตามกฎทั้งสามข้อ


1
คุณสามารถใช้ค่าคงที่ตัวเลขโดยไม่ต้องมี 0,1,2,7: p[];main(){p={(5*5*5*5*5*64+96696)*(443+5688),(5*3*4*3+4-3)*(66*45*6-6*6-4+3)*8‌​3*(3+4),6544494+36868};puts(p);}- 111 ตัวอักษร

1
หลอดเลือดดำที่คล้ายกัน (จริง ๆ แล้วจัดการปัญหาในวิธีต่าง ๆ ก่อนที่จะชำระนี้) x[]={45483*39994-3958,48465*38543-5584,6584695-3333};main(){puts(x);}- 69 ตัวอักษร ฉันแน่ใจว่าฉันสามารถโกนหนวดเพิ่มอีกสองสามครั้งเพื่อให้ได้ตัวอักษรที่มากขึ้น เป็นวิธีที่สนุกที่จะใช้จ่ายสองสามชั่วโมงแล้ว :)
โคลคาเมรอน

7

PHP, 28 ไบต์

ไม่งงว่า แต่สั้นมากและชัดเจน :) แสดงให้เห็นว่าแม้เมื่อมีการ จำกัด ตัวอักษรคุณสามารถติดตามโปรแกรมได้ง่าย ข้อ จำกัด ที่ 1 และ 3 ได้ติดตาม ข้อ จำกัด ที่ 2 ถูกทารุณกรรม

<?=str_rot13('Uryyb Jbeyq');

โปรดทราบว่าต้องมีshort_open_tagการตั้งค่ายกเว้นว่าคุณใช้ PHP 5.4 ขึ้นไป บางทีตัวอย่างบางตัวอาจสั้นกว่านี้ แต่ฉันคิดว่าตัวอย่างนี้ค่อนข้างสั้น


7

ทุบตี 28 ตัวอักษร:

printf 'p|ɹ°M ο||ǝ%b'"\x48"

p | ɹοMο || ǝH

หรือด้วย / bin / echo (18 ตัวอักษร) *) ดูการสนทนาด้านล่าง

/bin/echo -e 'p|ɹοM ο||ǝ\0110'

selftest:

echo "printf 'p|ɹοM ο||ǝ%b' "\x48"" | egrep -i "[^hlwd27eor01]"

หนักกว่าเจ้า! เครื่องมือสำหรับการพลิกคำคว่ำเครื่องมือที่คิดว่า 'H' หรือ 'o' กลับหัวจะแสดงได้ดีที่สุดในฐานะ H หรือ o สิ่งนี้จะขัดแย้งกับกลุ่ม 1 (Hlwd: 27: eor01) ตามลำดับ 3

H สามารถแสดงด้วย

echo -e "\0127"

แต่ 01 และ 2 ก็มีพิษเช่นกัน Gee! แต่ bash-buildin echo ไม่เพียงมีตัวเลือกในการแสดงค่าเลขฐานแปด แต่ยังเป็นเลขฐานสิบหกด้วย:

echo -e "\x48"

แต่ถ้าเราใช้ bash เป็นภาษาการเขียนโปรแกรมคำสั่ง echo เป็นส่วนหนึ่งของโปรแกรมซึ่งไม่เพียง แต่นับจำนวนตัวอักษรเท่านั้น แต่ยังมีอักขระที่มีพิษ (hlwd: 27: eor01) eho จากกลุ่ม 1 และ 3

ดังนั้นนี่คือช่วงเวลาที่เสียงสะท้อนเสียชีวิต โชคดีที่มี printf ซึ่งรู้ว่าจะแสดง "% b"

ตัว r เป็นตัวอักษรที่มีปัญหาเพียงอย่างเดียวใน printf และเป็นของกลุ่มที่ 3 เนื่องจาก 'o' อยู่ในกลุ่มสุดท้ายเราจึงสามารถทิ้งมันไว้ใน Hello และในโลก แต่เราสามารถใช้ omicronซึ่งดูเหมือน o หรือ &deg;°

ลิงค์:


จะถอนรากถอนโคนนี้ แต่ชื่อเสียงของคุณ leet เกินไป
Konrad Borowski

@GlitchMr: ตอนนี้คุณทำได้ - ฉันลงคะแนนบางอย่างและน่าจะเป็น 500N :)
ผู้ใช้ที่ไม่รู้จัก

dl.dropbox.com/u/63913412/stilltooleet.png นอกจากนี้คำถามที่เกี่ยวกับการ downvoting ก็ไม่ได้ลดชื่อเสียง อย่างไรก็ตามคำตอบของการถอนตัวยังไม่เกิดขึ้น
Konrad Borowski

@GlitchMr: อ่านั่นแหละ! :)
ผู้ใช้ที่ไม่รู้จัก

6

C (94)

บนเครื่อง Endian เล็ก ๆ น้อย ๆ :

main(){int i[]={1819043144,((0x1bc5c81b|1<<0x14)*4)+3,0xa646c00|(0x39<<1),0};printf("%s",i);}

ละเมิดกฎที่สอง แต่ให้ความมั่นใจกับส่วนที่เหลือ


6

JavaScript - 132 ตัวอักษร

(_=(_=[][(f=!!(_='')+_)[3]+(b=({}+_)[(I=-~(z=_-_))])+($=(c=(d=!_+_)[I])+d[z])])())[f[I]+'l'+(a=d[3])+$]("H"+a+'ll'+b+' W'+b+c+'ld')

แบ่ง กฎฉัน

การใช้งาน :

  • วาง "javascript: [script]" ลงในแถบที่อยู่ของเบราว์เซอร์
  • สร้างหน้า html ที่ว่างเปล่าวางสคริปต์ลงในแท็ก

แบ่งทั้งกฎ 1 และ 2 คุณกำลังใช้หมายเลข 1 สำหรับอาร์เรย์
Kevin Brown

คุณสามารถแทนที่1ด้วย!![]+![]และ0โดย""-""ไม่ทำลายกฎ # 2
HoLyVieR

ขอบคุณ @ Bass5098 และ @HoLyVieR ฉันพลาด 1 และ 0 เมื่อลดสคริปต์ให้เหลือน้อยที่สุด ฉันแทนที่ 0 ด้วย z = _-_ และ 1 ด้วย I = - ~ z, ฉันยังสามารถใช้ ++ z ได้ แต่ - ~ ดูดีกว่า :)
m0sa

3
ฮะ? !![]+![]? ทำไมไม่เพียง4-3?
Timwi

4
@Timwi: obfuscation เพิ่มเติม
Thomas Eding

6

Dis , 102 83 chars

ยกเลิกการควบคุมลูปโค้ดเนื่องจากสามารถสร้างตัวอักษรที่มีการดำเนินการติดต่อกันน้อยกว่าห้าครั้ง บันทึกสองสามตัวอักษรโดยการใช้ค่าตัวสะสมซ้ำ: สองตัวlต่อเนื่องกันSPACEสามารถสร้างขึ้นจากoและdสามารถสร้างขึ้นlได้

*>|||{>|||{>||{{>|{|||{>||{>|{>|||{>||{||{!!>**_!!}|_}!^__}|__>*__}|_}|_>!!|_}!^__!

เวอร์ชั่นเก่า

^}!>^^_^!__!>_^!^^**_^!^^**_
^_!{**_^__!{>_^__{>>!^_!{**_
^_!>^*_^!^^**_^_^^**_*______
___________>||||{^

พร้อมความคิดเห็นด้านล่าง มันใช้ลำดับการปฏิบัติการที่เหมือนกันห้าแบบเพื่อสร้างตัวละครทั้งหมดในHello World: การหมุนหนึ่งครั้งและการลบสี่ครั้ง

^     (move code pointer to data pointer value '^')
}!>^^ (store 'H' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!__!> (store 'e' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_!{** (store 'o' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
__!{> (store ' ' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
__{>> (store 'W' in accumulator)
!     (program termination)
^     (data pointer value used by code pointer jump)
_!{** (store 'o' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_!>^* (store 'r' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
!^^** (store 'l' in accumulator)
_     (no-op)
^     (data pointer value used by code pointer jump)
_^^** (store 'd' in accumulator)
_     (no-op)
*     (data pointer value used by code pointer jump to reach '!' between 'W' and 'o')
________________ (no-ops)
_     (no-op, address '^')
>|||| (rotate data value and perform four subtractions)
{     (print value in accumulator)
^     (move code pointer to data pointer value '^' except for the last jump '*')

6

C: 162 ตัวอักษร (ยกเว้นบรรทัดใหม่ที่ไม่จำเป็น)

ฉันเลือกที่จะอ่านและโปร่งใสเมื่อเขียนสิ่งนี้

a[3],b;main(){b=99
+9;b+=b<<8;b=b<<8|
97|4;b=b<<8|64|8;a
[3^3]=b;b=78+33<<8
;b+=87;b=b<<8|35^3
;b=b<<8|64|47;a[5^
4]=b;b=97+3<<8;b+=
99+9;b=b<<8|66|48;
a[6^4]=b;puts(a);}

เป็นไปตามข้อกำหนดทั้งสามข้อ


1
ฉันชอบสิ่งนี้ แต่น่าเสียดายที่มันไม่เป็นไปตามกฎทั้งหมดเพราะมันมีตัวเลขที่7ละเมิดกฎ # 3 7แต่มันจะง่ายต่อการกำจัด นอกจากนี้โดยการเพิ่มไม่กี่intวินาทีและเพิ่มวงเล็บพิเศษไม่กี่และการเพิ่มint puts(int*);ที่จุดเริ่มต้นก็รวบรวมกับgcc -ansi -W -Wallเฉพาะกับคำเตือนที่เดียว: การควบคุมการถึงจุดสิ้นสุดของฟังก์ชั่นที่ไม่เป็นโมฆะ
pts


5

PostScript 41 ตัวอักษร

<64><~+BNK%C]~><48656c6c6f>3{print}repeat

การใช้งาน: $ gs -q -dNOPROMPT -dNODISPLAY filename.ps


1
คุณสามารถเรียกใช้เช่น:gsnd -q -- filename.ps
luser droog

5

JavaScript, 66 ตัวอักษร

โซลูชัน JavaScript อื่นกฎการแตกครั้งนี้ # 2

top[(U=unescape)('a%6cert')](U('%48e%6c%6co %5'+(6+1)+'or%6c%64'))

ด้านบนเป็นไปตามแนวคิดที่อยู่เบื้องหลังคำตอบของ hallvabo ก่อนที่ฉันจะเข้าใกล้แนวทางนั้นฉันมีเนื้อหาที่สับสนมากขึ้น:

top[8680439[n='toString'](30)]((16+1)[n](z=8*4)[u='toUpperCase']()
+15960[n](33)+'o '+z[n](33)[u]()+1155505[n](36))

ซึ่งแบ่งกฎ # 2 และเข้ามาที่ 114 ตัวอักษร (ลบการคืนค่าขนส่งในโซลูชันที่สองนี้เนื่องจากมีเพื่อให้สามารถอ่านได้)


4
ผมอ่านที่เป็น unescapeR
Mateen Ulhaq

@MateenUlhaq ฉันมักจะอ่านมันในฐานะ R unescapeและฉันเล่นเพียงหนึ่งปีกว่าทศวรรษที่ผ่านมา ... ฉันผิดอะไร
Mwr247


4

ฟูริเยร์, 39 ไบต์

8*9a99^^a+6^aa~q+3a33va86^aq+3a+3aqa-8a

ฟูเรียร์สับสนอยู่เสมอ นี้ต่อไปนี้ทุกกฎ

ชำรุด:

8*9a    Set the accumulator to 8, multiply it by 9, and print the 
        corresponding ASCII code.

99^^a   Set the accumulator to 99, increment it twice, and print the
        corresponding ASCII code.

+6^aa   Add 6 to the accumulator, increment it, and print the
        corresponding ASCII code twice.

~q      Set the variable q to the current value of the accumulator.

+3a     Add 3 to the accumulator and... I think you get the idea.

33va    Set the accumulator to 33, decrement it, and print ASCII.

86^a    Yes, okay, I think it's obvious by this point.

q+3a    Set the accumulator to the value of q (earlier set to 108),
        add 3, and print ASCII.

+3a     ...

qa      Invoke q again and print ASCII.

-8a     Subtract 8 from the accumulator and print ASCII.

นี่อาจเป็นเพียงเล็กน้อย


ว้าวฉันเพิ่งเพิ่งรู้ว่ามีคนอื่นใช้ฟูริเยร์: ดีคนหนึ่ง, +1
เบต้าสลายตัว
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.