Уникайте унікальних символів


23

Це дуже просто: Ваша програма або функція повинна генерувати наступний текст:

Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.

Дрібний друк

Ви можете написати програму або функцію , яка повертає результат у вигляді рядка або друкує його до STDOUT (або найближчої альтернативи). Ви можете необов'язково включати в висновок один зворотний новий рядок.

Оцінка балів

Кількість байтів у вашому коді, помножене на кількість унікальних байтів у вашому коді

Виграє найнижчий рахунок.

Наприклад, відповідь на відмову або пробіл матиме тут величезну перевагу, оскільки множник буде дуже низьким (8 та 3 відповідно). Однак, як правило, написання програм цими мовами створює набагато довший код, який може заперечувати цю перевагу.

Стандартні лазівки, які вже не є смішними , заборонені .


Я припускаю, що корпус повинен бути точним?
— EnragedTanker

@crayzeedude так, ось такий сенс
— durron597

Добре. Просто уточнююча. : p
— EnragedTanker

1
@CarpetPython Про це в пісочниці були дебати, і, врешті-решт, я вирішив, що НЕ СПОМОЖИТИ іСТОРИЙ рівень гри. Зауважте, що білі простори та безсоння все одно мають найвищі оцінки!
— durron597

2
Як я десь писав, якщо припустити, що використання більшої кількості байтів для компенсації менш унікальних символів поводиться аналогічно перетворенню чисел у різні бази, то приблизно bytecount~Log(X,unique), з X деякою постійною для цієї проблеми. Таким чином унікальний ^ bytecount ~ константа. Обчислення цієї оцінки (log2) дає python2_mbomb007 728, python2_carpetpython 744, ruby 756, Fish 825, Insomnia 1148, cjam 1277, whitespace 1484, brainfuck 3546. Тож, за винятком мозгової відповіді, вона є відносно постійною ...
— blutorange

Відповіді:


7

Безсоння , 575 байт * 4 = 2300

dyedd=dyyyye=d=yd=dddde=ded=deey=eyy=de=edd=eydyee=yeyy=yey==ddyee=eydee=y=eyeedd=dde=yddd=eede=yedde=eeyd==yeyy=yyddy=eyy=dy=dddye=dyey=ede=yddd=dde=de=yyye=yyye=ddyyy=dyy=yeyddy=eyyyde=eed=ddd=yd=edyyd=eeydd=yedd=eye=eee=eeyy=yyyedde=d=eyyyedy=d=yddyye==dyyede=ddd=eydd=yd=ddde==eeeeyy=yeyd=deyy=yyy=ydy=dy=dd=e=ey=dddddy=yeey=ey=eed=ddd=eedy=ddddde=ydeyy=edd=ydy=ddy=yeedd=ydde=dde=edyye=ded=yeed=dddddde=eedy=eyde=ydy=ydydd=eyydd=dd=dddd=ddyye=ydeey=ed=eeeye=y=ydydde=eyyd=eyee=dy=edeyed=dyed==eyyddey=dd=yddd=yddd=de=ddedy=eyydd=eeedy==eyyydeee=d=d=eydd=yey=dyy==yyyedy=

Використовує 4 символи dye=.

Рішення 1b (неопубліковано): 783 байт * 3 = 2349

eeeeyeeyy=eeyy=yeyye=yyyeeyye=eeeye=yeyey=eyeyyy=eyy=eeyeye=yeyeyyy=yyeeye=yeyy=yey==yyeyeyeye=eyyey=y=yyyyyy=y=eyyeyyyyyyye=eeye=yyeeyye=eyeyeyyy==yeyy=yeyyyeyye=yyyeeyy==eeyyeee==eeyye=yyyyeyyeyyye=yyyyyyy=yeye=eyyyyy=eeye=eeyeeeeey=eyeye=eeee=yeyyye=eyyyyye=y=eeeyyy=eyyeyee=yyy=eyye=yeyeeee=yyeyeyyyy=eeyy=yyyyy=eyyyy=yyeeyye=e=eyyyyy=eyey==eyeyy=yyyyyeyeyeye=ye=yyyyyy==eeeeyy=yeye=yeyyey=yyy=eyyyeeeye==yeeyyeyy=e==yeeeyyyeyy=yeey=ey=eee=eyeyy=yyeeee=yeeyyyyy=yee=yeyyy=yeeeeyy=eyeeeeeye=eeeyy=yyeeeeyyye=yey=yyyyeeyye=yyyyyyy=yeee=eeeeyyeye=eyeeye=eeyyeyyy=eeyee=yyyyyeeyy=eee=eeyyeyyyyy=eeey=eyyeeyy=eyyeyyy=eeeeyeee=eeeye=y=yyyeyy=yyeeee=yyeyey=ey=eyyyyyeyyy=yeye==yeeyyyeyy=yeye=yyyyeeyy=eeeyyeeyyy=yeeyeyyy=eeyye=eee=eyyye==eyeyeyyyyy=e=eeyeeye=yeey=eyeyy=eyeye=ey=eyyeye=

Використовується лише 3 символи ey=.

Рішення 1: 826 байт * 3 = 2478

yoyoy~oyoyo~oyooyy~ooyyoyy~ooyyyyoy~~yoyyo~ooyoooyooo~yoyyo~oyoyoyyy~yyo~oyyoo~~ooooy~oyyyyy~oyoyoo~~oyyyoooyy~~oyoyooyyy~yyooo~yoyo~yoyyyyo~yooyo~y~yyoyyyooyy~oyyooy~ooyoy~oyyooy~ooyyo~yoyyoo~o~ooyo~yooyyoo~yoyoy~ooyyyyooo~oyoyyo~yyoyyyoo~yyo~yyooyyo~yoyyoooy~~yoyyyooyoyy~oyoyyy~yoooyyoy~yooyy~yooyyo~yyooyyoo~oyoyo~oyyy~oyyo~oyyoyo~oyyyoo~oyoyyoo~yooyo~ooooo~~yoyyoyyoyoo~yoyyooo~y~ooooy~yyyoy~ooooyyoyyoy~oyyoo~oyyoyo~yoyyyooy~oyooo~yoyyoyy~yyyyyo~oyooy~oyoyy~yoyyyoy~ooyoy~yoyyoooy~~oyyyo~ooooooy~yooyoyyoyo~yooyyo~oooyyo~yoyooyyo~oyyy~o~yooooy~oyoyyooooy~~yoyyooyyo~oy~yyyoyyyyy~yoyyyoy~yooo~oooy~oooooyyoyyyo~yoyyo~y~oooyyyoyoo~yyooooyoyy~y~oooyyyoy~~yoy~oyyoyoyyy~yoyyyyy~oyooo~yyyyooo~yooyyoy~yooyo~yoyyyo~yyoyyyo~o~ooooooyoy~oyoyyoy~yyoooo~ooooyy~oyoyoy~ooyyo~yyoooyo~yyyyyo~oyyo~yooyyooyyoy~~ooyyyyoyyy~ooyyo~yyooo~

Тільки використовує 3 -х символів: yo~. Для створення цього використовується програма.

Наразі всі програми використовують лише інструкції 0, 1, 2, 6. Іншими словами, вони маніпулюють бітами в один байт і роздруковують результат.


19

CJam, 266 281 456 байт * 14 12 7 унікальний = 3724 3372 3192

Спробуйте в Інтернеті.

14301201124204202034420112034224204431020210101232301021240204310431312122132100240400222324402030223103420431324402222132223233141443401210314023001122320404112224314302132421403301243334313000011124244441400003310332301330220022110121411122100040310110020040121444302100143202204330334033211334242120304123121024200421121232100303121022431044444423243331440434010014400~~10~~100~~1~43c~c~4~~41c~100~~1~43c~c~123~~100~~1~43c~c~44~~14~~43c~c100~~40c~c43c~~

Пояснення

Я використовував стратегію, щоб розглядати кожен символ у рядку як базовий-123 цифру і кодувати це як десятковий номер у програмі. Потім програма перетворює це число назад в базу 123 і відображає кожну цифру бази-123 назад до символу. Оскільки важко пояснити, чому програма перебуває в її нинішньому стані, я поясню кожну її версію.

Ось як виглядав кінець програми у першій версії:

...2068438725 123b:c

Це реалізує стратегію найпростішим можливим способом. Число, кодоване зазвичай в базі 10, перетворюється назад в базу 123, і кожна цифра базового 123 відображається назад до символу. Але для цього використовуються 4 унікальні нецифрові символи, і можливість позбутися будь-якого з них, швидше за все, буде вартим удару за розміром через необхідність використання менш прямого коду.

По-перше, я зрозумів, що можу позбутися операторів bта :операторів, створюючи їх під час виконання, оскільки їхні значення символів ASCII перетворюються назад на символ (з уже наявним cоператором) та оцінюють їх з ~оператором. Зробити це з :оператором виявилося трохи хитро , оскільки його треба розібрати разом із наступним cоператором. Я вирішив це, створивши символи, :а cпотім створивши та оцінивши характер +, який об'єднує попередні два символи в рядок, :cякий потім може бути оцінений належним чином.

По-друге, я зрозумів, що ~оператор, який я щойно представив, мав зручний новий перевантажений варіант: коли йому дано число, він створює побітне доповнення. Використовуючи це двічі поспіль після числа, я міг би ввести токеновий перерву у джерелі без результативного обчислювального ефекту, що дозволить мені замінити пробіли, які використовуються для розділення чисел ~~.

Кінцевий результат - це ще 15 байт коду в кінці, але ця вартість значно переважає за рахунок вилучення двох унікальних символів з 14. Ось порівняння кінця першої версії з кінцем другої версії:

...2068438725  123[ b  ][   :c    ]
...2068438725~~123~~98c~58c99c43c~~

Використовувати менше двох операторів, якими я користувався, було б неможливо, але я все ж хотів менше унікальних символів. Тож наступним кроком було усунення цифр. Змінивши кодування числа таким чином, щоб кожна десяткова цифра була дійсно базовою 5 цифрою, я міг потенційно усунути цифри 6-9. Перш ніж усунути що-небудь із кінця пргораму, це виглядало приблизно так:

...4010014400 10b5b123b:c

Як було сказано раніше, усунути простір досить просто. Але b, :і cне було б так легко, так як їх коди символів 98, 58і 99, відповідно. Усі ці цифри містили позначення для усунення, тому мені довелося знайти способи їх виведення. І єдиними корисними числовими операторами зі знаками символів, що не містять 5-9, були зменшення, збільшення, множення та додавання.

Бо 98я спочатку використовував 100~~40c~40c~, що зменшується 100двічі. Але потім я зрозумів, що можу скористатися ще одним ~оператором, оскільки побітове доповнення дозволяє мені отримувати від’ємні числа, які при додаванні дозволяють мені імітувати віднімання. Тож я потім використав 100~~1~43c~, що додає 100і на -22 байти менше. Бо 58я використав 44~~14~~43c~, що додає 44і 14. А бо 99я використовував 100~~40c~, які декременти 100.

Кінцевий результат досить великий і заплутаний, але вартість значно більшої кількості та коду обробки трохи перевищувала велику користь від усунення 5 унікальних символів з 12. Ось порівняння остаточного кінця програми перед вилученнями і після усунення:

...4010014400  10[      b      ][  5  ][     b     ]123[      b      ][            :c            ]
...4010014400~~10~~100~~1~43c~c~4~~41c~100~~1~43c~c~123~~100~~1~43c~c~44~~14~~43c~c100~~40c~c43c~~

Гаразд, зараз я вражений. Як база 6 цифр, база 7 цифр тощо порівнюється з базовою 5?
— durron597

@ Durron597 Вони дійсно не роблять обчислення простіше, так як коди символів операторів мені потрібно , ( 98, 58і 99) по - , як і раніше поза діапазону. А збільшення бази лише зменшує загальний розмір програми на 8-10%, що недостатньо, щоб компенсувати 10-15% бал, отриманий новим унікальним характером. Повторне включення bоператора аналогічно не варто.
— Runer112

Візьміть число x і перетворіть його в базу b. Його довжина буде floor(log_b(x)+1), і вона буде містити bрізні символи. Значить рахунок b*floor(log_b(x)+1). x - задана велика кількість, і якщо ви побудуєте це для b, ви знайдете мінімум в b = 3. Тобто довжина трохи зменшується, коли ви використовуєте більш високі бази (log), але розмір набору збільшується лінійно, тому цього не варто. Зробили просту програму пробілів, але вона отримала лише оцінку 4134.
— blutorange

@blutorange Вам слід створити програму пробілів. 4134 вистачає другого місця
— durron597

16

Пробіл, 1157 937 байт * 3 унікальних = 3471 2811

За популярним запитом (?) Я розміщую рішення пробілу.

Для того, щоб зменшити необхідний код, я жорстко кодував весь рядок як одне двійкове число (7 біт на кожен байт). Простий цикл витягує символів і друкує їх.

Вихідний код на filebin.ca.

ПРИМІТКА: Технічні характеристики дозволяють отримати довільні великі цілі числа , але інтерпретатор Haskell на офіційній сторінці обмежений 20 бітами. Використовуйте, наприклад, цей рубіновий перекладач на github / neprijatelfork / whitespaces.

Сценарій рубіну для створення програми пробілів (l = WHITESPACE, t = TAB, u = NEWLINE, все після // ігнорується, записує у файл prog.h):

str = 'Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.'

def b2ws(bin)
    bin.chars.map{|x|x=='0' ? "l" : "t"}.join
end
def d2ws(dec,pad=0)
    b2ws(dec.to_s(2).rjust(pad,'0'))
end

bin = str.reverse.chars.map do |x|
    "  " + d2ws(x.getbyte(0),7) + " // char <#{x=="\n" ? "LF" : x}>"
end
data = "lll // pushes string as one large number\n#{bin.join("\n")}\nu"

File.open('prog.h','w') do |fout|
    fout << data << "\n"
    fout << <<-eos

// output string loop
ulllu // label 0

  // extract, print, and remove the last 7 bits of the data
  lul   // dup
  llltlllllllu // push 128
  tltt // mod
  tull  // print as char
  llltlllllllu // push 128
  tltl // div

  // break loop if EOS
  lul   // dup
  utltu // jump to 1 if top of stack is zero

ululu // jump to 0

ulltu // label 1
uuu
    eos
end

Для ілюстрації програма пробілів у читаній для людини формі. Нижче див. Простий скрипт для перетворення його на фактичну програму пробілів.

lll // pushes string as one large number
  ltltttl // char <.>
  ttltltt // char <k>
  ttltttt // char <o>
  ttltttt // char <o>
  ttlttll // char <l>
  ltlllll // char < >
  ttllllt // char <a>
  ltlllll // char < >
  ttlltlt // char <e>
  ttlttlt // char <m>
  ltlllll // char < >
  ttllttt // char <g>
  ttltttl // char <n>
  ttltllt // char <i>
  tttlttl // char <v>
  ttltllt // char <i>
  ttllttt // char <g>
  ltlllll // char < >
  ltllltl // char <">
  ltlttll // char <,>
  tlllttt // char <G>
  tlltttt // char <O>
  tllltll // char <D>
  ltlllll // char < >
  tlttllt // char <Y>
  tlttltl // char <Z>
  tlllllt // char <A>
  tllttll // char <L>
  ltlllll // char < >
  tllltlt // char <E>
  tlltlll // char <H>
  tltltll // char <T>
  ltlllll // char < >
  tltlltl // char <R>
  tllltlt // char <E>
  tltlttl // char <V>
  tlltttt // char <O>
  ltlllll // char < >
  tltlltt // char <S>
  tltllll // char <P>
  tllttlt // char <M>
  tltltlt // char <U>
  tlltltl // char <J>
  ltlllll // char < >
  tlttlll // char <X>
  tlltttt // char <O>
  tlllttl // char <F>
  ltlllll // char < >
  tlltttl // char <N>
  tltlttt // char <W>
  tlltttt // char <O>
  tltlltl // char <R>
  tlllltl // char <B>
  ltlllll // char < >
  tlltltt // char <K>
  tlllltt // char <C>
  tlltllt // char <I>
  tltltlt // char <U>
  tltlllt // char <Q>
  ltlllll // char < >
  tllltlt // char <E>
  tlltlll // char <H>
  tltltll // char <T>
  ltllltl // char <">
  ltlllll // char < >
  ltttltl // char <:>
  ltltllt // char <)>
  ttlltlt // char <e>
  ttllltt // char <c>
  ttllllt // char <a>
  ttlltlt // char <e>
  tttllll // char <p>
  ltlllll // char < >
  ttttllt // char <y>
  ttlttlt // char <m>
  ltlllll // char < >
  tttlltl // char <r>
  ttltttt // char <o>
  ttllttl // char <f>
  ltlllll // char < >
  ttttllt // char <y>
  ttlltll // char <d>
  tttlttt // char <w>
  ttltttt // char <o>
  tttlltl // char <r>
  ltlllll // char < >
  ttltttt // char <o>
  ttltttt // char <o>
  tttltll // char <t>
  ltlllll // char < >
  tttltll // char <t>
  tttlltt // char <s>
  tttltlt // char <u>
  ttltltl // char <j>
  ltltlll // char <(>
  ltlllll // char < >
  ttlltll // char <d>
  ttlltlt // char <e>
  tttltll // char <t>
  ttltttt // char <o>
  tttltlt // char <u>
  tttlllt // char <q>
  ltlllll // char < >
  ttttllt // char <y>
  ttlttll // char <l>
  tttlltt // char <s>
  tttltlt // char <u>
  ttltttt // char <o>
  ttltllt // char <i>
  ttttlll // char <x>
  ttltttt // char <o>
  ttltttl // char <n>
  ttllltl // char <b>
  ttltttt // char <o>
  ltlllll // char < >
  ttltlll // char <h>
  tttltll // char <t>
  ttlltlt // char <e>
  ttllltl // char <b>
  ttllllt // char <a>
  ttttltl // char <z>
  ttltllt // char <i>
  ttlttll // char <l>
  tllltlt // char <E>
u

// output string loop
ulllu // label 0

  // extract, print, and remove the last 7 bits of the data
  lul   // dup
  llltlllllllu // push 128
  tltt // mod
  tull  // print as char
  llltlllllllu // push 128
  tltl // div

  // break loop if EOS
  lul   // dup
  utltu // jump to 1 if top of stack is zero

ululu // jump to 0

ulltu // label 1
uuu

В основному, рядок для виведення - це довге ціле число, і вам потрібно зменшити його бал.

Візьміть число x і перетворіть його в базу b. Його довжина буде floor(log_b(x)+1), і вона буде містити bрізні символи. Значить рахунок b*floor(log_b(x)+1). xце задана велика кількість, і якщо ви задумали це для b, ви знайдете мінімум майже b=3(і b=2майже так само добре). Тобто довжина трохи зменшується, коли ви використовуєте більш високі бази (log), але розмір набору збільшується лінійно, тому цього не варто.

Таким чином, я шукав мову з лише 0/1, але я не знайшов жодної, і тоді я згадав, що є пробіл, і спробував це. У пробілі можна вводити двійкові числа з 0 та 1 безпосередньо.


Старий код, гірший бал, але цікавіший

Старий код на filebin .

Рубіновий скрипт, який я використовував для створення програми (l = WHITESPACE, t = TAB, u = NEWLINE, все після //ігнорування записується у файл prog.h):

str = 'Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.' + "\n"

def shift(x)
    (x-97)%128
end

EOS = "lttltl" #26
STACK = []

bin = str.reverse.chars.map do |x|
    byte = shift(x.getbyte(0))
    rf = STACK.index(byte)
    STACK.unshift(byte)

    y = byte.to_s(2).chars.map{|y|y=='0' ? 'l' : 't'}.join
    ph = "lll#{y}u" # pushing directly
    if rf
        bn = rf.to_s(2).chars.map{|y|y=='0' ? 'l' : 't'}.join
        cp = "ltll#{bn}u" # copying from stack
    end

    if STACK.size>0 && STACK[0]==STACK[1]
        "lul // dup #{x.inspect}"
    elsif cp && cp.size < ph.size
        "#{cp} // copy <#{x.inspect}> (from #{rf})"
    else
        "#{ph} // push <#{x.inspect}> (#{shift(x.getbyte(0))})"
    end
end

File.open('prog.h','w') do |fout|
    fout << "ll#{EOS}u // push EOS" << "\n"
    fout << bin.join("\n") << "\n"
    fout << <<-eos
// output string
ullu // label 0
  // add 97 (128) before printing
  lllttlllltu // push 97
  tlll // add
  llltlllllllu // push 128
  tltt // mod
  tull  // print top of stack

  // break loop if EOS
  lul   // dup
  ll#{EOS}u // push EOS
  tllt // subtract
  utltu // jump to 1 if top of stack is zero
uluu // jump to 0

ulltu // label 1
uuu
    eos
end

Для ілюстрації програма пробілів у читаній для людини формі. Нижче див. Простий скрипт для перетворення його на фактичну програму пробілів.

lllttltlu // push EOS
llltltlltu // push <"\n"> (41)
llltllttltu // push <"."> (77)
llltltlu // push <"k"> (10)
llltttlu // push <"o"> (14)
lul // dup "o"
llltlttu // push <"l"> (11)
lllttttttu // push <" "> (63)
llllu // push <"a"> (0)
ltlltu // copy <" "> (from 1)
llltllu // push <"e"> (4)
lllttllu // push <"m"> (12)
ltlltlu // copy <" "> (from 2)
lllttlu // push <"g"> (6)
lllttltu // push <"n"> (13)
llltlllu // push <"i"> (8)
llltltltu // push <"v"> (21)
ltlltu // copy <"i"> (from 1)
lllttlu // push <"g"> (6)
ltllttlu // copy <" "> (from 6)
llltllllltu // push <"\""> (65)
llltlltlttu // push <","> (75)
lllttllttlu // push <"G"> (102)
lllttltttlu // push <"O"> (110)
lllttlllttu // push <"D"> (99)
ltlltltu // copy <" "> (from 5)
lllttttlllu // push <"Y"> (120)
lllttttlltu // push <"Z"> (121)
lllttlllllu // push <"A"> (96)
lllttltlttu // push <"L"> (107)
ltlltllu // copy <" "> (from 4)
lllttlltllu // push <"E"> (100)
lllttlltttu // push <"H"> (103)
llltttllttu // push <"T"> (115)
ltllttu // copy <" "> (from 3)
llltttllltu // push <"R"> (113)
ltlltllu // copy <"E"> (from 4)
llltttltltu // push <"V"> (117)
ltlltttlu // copy <"O"> (from 14)
ltlltllu // copy <" "> (from 4)
llltttlltlu // push <"S"> (114)
lllttlttttu // push <"P"> (111)
lllttlttllu // push <"M"> (108)
llltttltllu // push <"U"> (116)
lllttltlltu // push <"J"> (105)
ltlltltu // copy <" "> (from 5)
llltttltttu // push <"X"> (119)
ltlltlllu // copy <"O"> (from 8)
lllttlltltu // push <"F"> (101)
ltllttu // copy <" "> (from 3)
lllttlttltu // push <"N"> (109)
llltttlttlu // push <"W"> (118)
ltlltllu // copy <"O"> (from 4)
ltlltllltu // copy <"R"> (from 17)
lllttlllltu // push <"B"> (97)
ltlltltu // copy <" "> (from 5)
lllttltltlu // push <"K"> (106)
lllttllltlu // push <"C"> (98)
lllttltlllu // push <"I"> (104)
ltllttttu // copy <"U"> (from 15)
llltttllllu // push <"Q"> (112)
ltlltltu // copy <" "> (from 5)
ltllttlltu // copy <"E"> (from 25)
ltllttttlu // copy <"H"> (from 30)
ltllttttlu // copy <"T"> (from 30)
llltllllltu // push <"\""> (65)
ltlltllu // copy <" "> (from 4)
llltlttlltu // push <":"> (89)
llltlltlllu // push <")"> (72)
llltllu // push <"e"> (4)
llltlu // push <"c"> (2)
llllu // push <"a"> (0)
llltllu // push <"e"> (4)
lllttttu // push <"p"> (15)
ltlltttu // copy <" "> (from 7)
lllttlllu // push <"y"> (24)
lllttllu // push <"m"> (12)
ltlltlu // copy <" "> (from 2)
llltllltu // push <"r"> (17)
llltttlu // push <"o"> (14)
llltltu // push <"f"> (5)
ltllttu // copy <" "> (from 3)
ltllttlu // copy <"y"> (from 6)
lllttu // push <"d"> (3)
llltlttlu // push <"w"> (22)
llltttlu // push <"o"> (14)
ltlltttu // copy <"r"> (from 7)
ltlltltu // copy <" "> (from 5)
ltlltlu // copy <"o"> (from 2)
lul // dup "o"
llltllttu // push <"t"> (19)
ltllttu // copy <" "> (from 3)
ltlltu // copy <"t"> (from 1)
llltlltlu // push <"s"> (18)
llltltllu // push <"u"> (20)
llltlltu // push <"j"> (9)
llltllltttu // push <"("> (71)
ltlltltu // copy <" "> (from 5)
lllttu // push <"d"> (3)
llltllu // push <"e"> (4)
ltlltttu // copy <"t"> (from 7)
llltttlu // push <"o"> (14)
ltlltttu // copy <"u"> (from 7)
llltllllu // push <"q"> (16)
ltllttlu // copy <" "> (from 6)
lllttlllu // push <"y"> (24)
llltlttu // push <"l"> (11)
llltlltlu // push <"s"> (18)
ltlltltu // copy <"u"> (from 5)
llltttlu // push <"o"> (14)
llltlllu // push <"i"> (8)
llltltttu // push <"x"> (23)
ltlltlu // copy <"o"> (from 2)
lllttltu // push <"n"> (13)
llltu // push <"b"> (1)
ltlltlu // copy <"o"> (from 2)
ltlltlttu // copy <" "> (from 11)
llltttu // push <"h"> (7)
llltllttu // push <"t"> (19)
llltllu // push <"e"> (4)
llltu // push <"b"> (1)
llllu // push <"a"> (0)
lllttlltu // push <"z"> (25)
llltlllu // push <"i"> (8)
llltlttu // push <"l"> (11)
lllttlltllu // push <"E"> (100)
// output string
ullu // label 0
  // add 97 (128) before printing
  lllttlllltu // push 97
  tlll // add
  llltlllllllu // push 128
  tltt // mod
  tull  // print top of stack

  // break loop if EOS
  lul   // dup
  lllttltlu // push EOS
  tllt // subtract
  utltu // jump to 1 if top of stack is zero
uluu // jump to 0

ulltu // label 1
uuu

Сама програма пробілів досить проста, але є три оптимізації для гольфу:

  • використовувати lulдля клонування стека, коли є дублюючий символ
  • використовувати ltlдля клонування n-го запису стека, якщо його коротше, ніж натискання знака безпосередньо
  • зсуває всі байти на 97 (мод 128), зменшує двійкові числа менше

Простий рубіновий скрипт для перетворення мого читаного коду пробілу у фактичну програму пробілу (читати файл prog.hі записувати у файл prog.ws):

WHITESPACE = "l"
NEWLINE = "u"
TAB = "t"

File.open('prog.ws','w') do |fout|
    code = ""
    fin = File.read('prog.h')
    fin.each_line do |line|
        line.gsub!(/\/\/.*/,'')
        line.scan(/#{NEWLINE}|#{WHITESPACE}|#{TAB}/i) do |x|

            code << case x.downcase
            when NEWLINE.downcase
                "\n"
            when WHITESPACE.downcase
                " "
            when TAB.downcase
                "\t"
            else
                ""
            end
        end
    end
    fout << code
end

Новий рядок не є обов'язковим, ви можете зберегти кілька символів, не друкуючи його.
— durron597

Спасибі, змінили. Спочатку я включив його, тому що інтерпретатор Haskell додав вихід налагодження, але з рубіновим він виглядає чисто.
— blutorange

7

Рубін 144 байти * 39 Унікальний = 5616

puts"Elizabeth obnoxiously quoted (just too rowdy for my peace): \"#{'the quick brown fox jumps over the lazy dog,'.upcase}\" giving me a look."

Іноді найпростіший - найкращий.


Ви не використовуєте жодних спрощень у даних. Приклади просвітки та білого простору отримали вражаючі оцінки разом із деякими поясненнями. Навіть з бонусом за використання акуратного коду на здоровій мові, це занадто багато підґрунтя !!! Можливо, ви зможете повторно вступити у змагання за довжину + унікальний рахунок.
— Jose_X

6

Brainfuck, 1264 байт * 7 унікальних = 8848

Так, жахлива оцінка.

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

Я виявив, що можна використовувати менше унікальних символів, але довжина буде 10795 разів 5 = 53975.
— mbomb007

ви могли б це зробити, тільки +.не впевнені, що це буде менше.
— captncraig

Використовуючи лише, +і .я отримую 15018 * 2 = 30,036.
— captncraig

6

> <> (Риба) - 578 байт * 8 унікальних = 4624

14121412412431421124321110441421130402401433401430421141143114240333221142303303210321143224241321121343212340321131301320302344221132340304221130322340321313221100323234202311321143224241341121131213110444324310422421114441421142412420421114400443412442421112412413421113403423411403121100410413412423432421114431403423412401404412402434312421140413410434324324401431443243*3*3+3*1+00p44*4+3*2+01p44*3*4+1+11p44*3*4+1+21p43+3*2*31p43+3*2*41p43*3*41+1p44*3*4+1+42+1p43+3*2*43+1p43+3*2*1+44+1p43+3*2*1+33*1p43*3*3*3+33*1+1p43*3*3*33*2+1p43+3*3*43*1p44*2*1+43*1+1p44*3+3*2+43*2+1p

Мій рахунок не такий конкурентоспроможний, як я сподівався, але я вважав, що це рішення все ще досить цікаве для публікації.

Пояснення

Перший розділ коду - це довгий рядок цифр 0-4, які представляють 3-значне базове 5 представлення для кожного символу в рядку. Залишився код використовує pоператор у Fish, що дозволяє редагувати вихідний код програми під час роботи програми. За допомогою цього оператора я зміг генерувати рибний код, необхідний для перетворення базових 5 символів назад у базу 10 та виведення їх, а потім повернув цей код назад у вихідний код на початку файлу до того, як інтерпретатор досяг кінця лінії та загорнуті. Коли перекладач доходить до кінця рядка, код було змінено так, щоб виглядати так:

v4121412412431421124321110441421130402401433401430421141143114240333221142303303210321143224241321121343212340321131301320302344221132340304221130322340321313221100323234202311321143224241341121131213110444324310422421114441421142412420421114400443412442421112412413421113403423411403121100410413412423432421114431403423412401404412402434312421140413410434324324401431443243*3*3+3*1+00p44*4+3*2+01p44*3*4+1+11p44*3*4+1+21p43+3*2*31p43+3*2*41p43*3*41+1p44*3*4+1+42+1p43+3*2*43+1p43+3*2*1+44+1p43+3*2*1+33*1p43*3*3*3+33*1+1p43*3*3*33*2+1p43+3*3*43*1p44*2*1+43*1+1p44*3+3*2+43*2+1p
>55**$5*++ol?!; 

Коли код обертається навколо і натискає на vоператора, він опускається до другого рядка, потрапляє на >оператора і переходить до циклу, щоразу перетворюючи базове кодування назад у базове значення 10 ascii, а потім виводячи це значення. Коли на стеку більше немає значень, ?оператор перейде до програми ;і програма закінчиться.


5

7 , 273 байт × 7 унікальних байтів = 1911, неконкурентоспроможний (виклик після публікації мови)

501513010250341012432044041204045104011053033043511402401130443235151151105240424404004144031133304214014044433043401032201433022042551243201043511102223044114403120042140450415114434050440500114042432010430032533041340424320250451514210501020420444010403043040402343447403

Спробуйте в Інтернеті!

На жаль, це стара проблема, це означає, що я не можу перемогти однією з моїх новітніх мов. Однак мова була створена без знань про виклик (я просто випадковим чином натрапив на неї у "пов'язаних питаннях"), але, тим не менш, виявився ідеально придатним.

7 програм на PPCG зазвичай надходять у упакованому форматі, упаковуючи вісім команд у три байти (мова має дванадцять команд, але у вихідному файлі може з’явитися лише вісім, тобто три біти достатньо). Однак мова також підтримує восьмеричний формат, у якому кожна команда записується як ASCII-цифра, і це те, що я тут використав, тобто лише сім окремих байтів використовується ( 6команда не потрібна в програмі, яка тільки друкує простий рядок).

Програма дуже проста; він складається з двох елементів стека, довгого рядка, який щойно надруковується дослівно, a 7для розділення елементів (на жаль, неминучого), і 403це простий спосіб друку постійної рядки в 7 ( 40уникає другого елемента стека, пересуваючи його на у верхній частині стека, потім 3надрукує його та відкидає старий перший елемент стека, тобто 403сам).

Тож як я отримав рядок у 269 байт? 7 підтримує декілька форматів вводу-виводу, а один з його форматів - US-TTY , набір символів (конкретно, варіант Бодо), який широко застосовувався до винайдення ASCII. (На 5початку другого елемента стека, тобто початку програми, вказується кодування рядка; решта - сам вміст рядка.) Це п'ятибітний набір символів, і команди 0для5можна безпечно зберігати в рядках, не змінюючи їх послідовно (таким чином, якщо уникнути його одного разу точно буде відтворено оригінал), тому мова використовує пари команд (36 варіантів) для кодування символів US-TTY (32 варіанти, 4 використовуються для директиви до 7 перекладача). Звичайно, існує більше 32 унікальних символів, які люди можуть захотіти вивести (а в рядку з’являється більше 32 символів), тому два символи - це "коди зсуву", які перемикаються між чотирма наборами символів (великі літери, малі літери , фігури та визначене користувачем "розширення фігур", яке 7 використовує для решти символів ASCII, яких немає в інших наборах символів; однак, всі символи в рядку є "споконвічно" в US-TTY, тому деталі розширення не мало значення). Ось '

Ełlizabeth obnoxiously quoted Ø(Łłjust too rowdy for my peaceØ):
"ŁTHE QUICK BROWN FOX JUMPS OVER THE LAZY DOGØ," Łłgiving me a lookØ.

Я рахую десять змін, доданих до 124 символів введення, відносно незначне співвідношення. Таким чином, можливість використовувати лише трохи більше двох байтів вводу на один вхідний символ, разів 7 унікальних байтів, означає, що оцінка на цьому виклику неймовірно хороша. (Напевно, мова, яка була розроблена спеціально для цього завдання, використовувала б якесь стискання струни, а не попередній набір символів, але, хоча Бодо і US-TTY не були розроблені для гольфу, вони все ще досить стислі .)


Ця лазівка ​​- це запобігання написанню мови з метою відповіді на виклик, чого, очевидно, немає. І все-таки вартий нагороди від мене, хоча я не можу його прийняти, незважаючи на найнижчий на сьогодні бал.
— durron597

2

Python 2, 163 147 145 143 байт * 35 36 35 унікальний = 5705 5292 5220 5005

Це, мабуть, приблизно так добре, як я збираюся це отримати.

Зміни:

  1. Видалено .capitalize()на користь використання E.
  2. Змінено використовувати 'замість зворотних котирувань косого кута.
  3. Вилучено +та деякі пробіли для використання коми в printоператорі.
print"Elizabeth obnoxiously quoted (just too rowdy for my peace):",'"the quick brown fox jumps over the lazy dog,"'.upper(),"giving me a look."

Я спробував розглянути початок з двійкового чи шістнадцяткового і перехід на рядок, але переваги втрачаються в процесі перетворення.
— mbomb007

2

Python 2, 14508 11700 11088 10164 9486 9746 7860 145 байт * 36 унікальних = 5220

Я побачив заголовок і подумав, що це цікавий виклик для досить багатословного Python. Це мої замітки, коли я вирішував цю проблему.

Перша моя спроба зменшила кількість унікальних даних до 31:

print''.join(chr([69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46][r])for r in range(124))

Я думав, що можу зробити краще. Використовуючи map, унікальні матеріали знизилися до 26:

print''.join(map(chr,(69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46)))

Приблизно в цей час я помітив у тексті запитання, що оцінка була uniques * bytes, а не просто унікальні! Це означало, що мої оцінки за вищезазначене були 14508 та 11700. Не дуже конкурентоспроможними. Тому я тепер зменшую байти, зберігаючи текст у вигляді шістнадцяткової рядки:

# 308*36 = 11088
print''.join(chr(int('456c697a6162657468206f626e6f78696f75736c792071756f74656420286a75737420746f6f20726f77647920666f72206d79207065616365293a202254484520515549434b2042524f574e20464f58204a554d5053204f56455220544845204c415a5920444f472c2220676976696e67206d652061206c6f6f6b2e'[i*2:i*2+2],16)) for i in range(124))

Розмір був зменшений, але більш унікальні символи. Але якщо я використав упакований двоцифровий десятковий рядок із зміщенням 32:

# 308*33 = 10164
print''.join(chr(int('37767390656669847200796678798873798583768900818579846968000874858384008479790082798768890070798200778900806965676909260002524037004953413543003450475546003847560042534548510047543750005240370044335857003647391202007173867378710077690065007679797514'[i*2:i*2+2])+32) for i in range(124))

Це однакова кількість байтів, але економить 3 унікальних.

Я викладаю новий план. Якщо я спакую довге ціле число Python із 7 бітовими символами, я можу витягнути кожне з них, змістивши:

# 306*31 = 9486
h=1073974643401006528619595312441225198653732186368270382545648881135648217524502741093886285232362673460172159947573049818819511630304840724474679255867143965214892747087773876949021986013520804726327302180335979259392708372721217579101211940864406962137554744750
w=''
while h:w=chr(h&127)+w;h>>=7
print w

Добре, що це знизило бал до 9486. Цікавий експеримент, але ніде неподалік. А що робити, якщо я позбудусь імен функцій і покладусь на форматирование рядків?

# 443 * 22 = 9746
print('%c'*124)%(69,108,105,122,97,98,101,116,104,32,111,98,110,111,120,105,111,117,115,108,121,32,113,117,111,116,101,100,32,40,106,117,115,116,32,116,111,111,32,114,111,119,100,121,32,102,111,114,32,109,121,32,112,101,97,99,101,41,58,32,34,84,72,69,32,81,85,73,67,75,32,66,82,79,87,78,32,70,79,88,32,74,85,77,80,83,32,79,86,69,82,32,84,72,69,32,76,65,90,89,32,68,79,71,44,34,32,103,105,118,105,110,103,32,109,101,32,97,32,108,111,111,107,46)

Зараз у мене всього 22 унікальних, але оцінка не покращується.

Гаразд, що робити, якщо я взяв очевидний шлях і просто надрукував рядок:

# 131*60 = 7860
print'Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.'

Оцінка 7860. Я повинен був зробити це першим. Але я б так багато не навчився.

Я думаю, що я міг би зменшити унікальні елементи на 26, якби динамічно створив верхню частину регістру, так:

# 145*36 = 5220
print'Elizabeth obnoxiously quoted (just too rowdy for my peace): '+'"the quick brown fox jumps over the lazy dog,"'.upper()+' giving me a look.'

Я думаю, що Python не стане набагато кращим, ніж 5220. Завдання мінімізації унікальних символів у Python, безумовно, було повчальним.

Оновлення: mbomb007 має кращу програму Python - оцінка 5005. Приємна робота.


Приємні оптимізації вашого рішення +1. Я відредагував заголовок так, як ви запропонували.
— Логічний лицар

1

> <> (Риба) - 138 байт * 65 Унікально = 8970

Простий маршрут, тобто Hello World:

!v'Elizabeth obnoxiously quoted (just too rowdy for my peace): "THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG," giving me a look.'r!
 >l?!;o

Що ж, для мого першого вступу в <<> це було складним завданням. Я думаю, що я бачу деякі вдосконалення, але мені було цікаво, вивчивши це :)

Або зробити його надмірно складним - 1567 байт * 27 Унікальний = 42309

!\f8+3*:o2*f2*-:o3-:of+2+:ofa+-:o1+:o3+:of+:oc-:o\7+:od-:oc+:o1+:o9+: of-:o6+:o6+:o2-:o7-: od+:o\8-:o4+:o6-:o5+:of -:o1-:o\\6+:ob+ :o2-:o1+:o\:o5-:o:o\3+ :o3-:o8+:of4+-:oab ++:o\f4+-:o9+ :o3+: o\!
!5:of+a+:o1-:off+2+o:f-6-oa-:o8-:of3*1-:oa-:o2-:!fo3*7+:o2+:o:d+o:o5!f+:o7-:off+2+o6+:o8-!f:off!f+2+o4-:off+2+ob+!f:o3+::\ff    f f          f        f  f                  f    f        f     \!f-
 -                                               f                   f                    f     f                 f       ff    3 f          f        f  f                  f    f        f       f
 :                                               +                   +                    +     +                 +       ++    * +          +        +  +                  +    +        +       +
 o                                               2                   2                    2     2                 2       2a    1 2          2        2  2                  2    2        2       2
 c                                               +                   +                    +     +                 +       ++    + +          +        +  +                  +    +        +       +
 +                                               o                   o                    o     o                 o      \oo4-o \ o;         o        o  o                  o    o        o       o
 \:off+2+o9-:ob-:o4-:o2+:o2+:of4*%:of2++:o2,3+:o2 +:o3*f-3-:oc-:o3-:o\c+:o4+:oc-:o6-:o8+:o\9-:of 1++:o3-:o8+:o9-:o\8-:o9+:  o9+: o\e-:ob+:o8- :o3+:o3+ :o\4-:o7+:o2-f-:od+:o\2+:o c-:o3-:o\7+:ob\

Якщо ви пишете рядок назад, ви можете скинути rреверс стека :) Також ви можете перемістити остаточне місце oдо порожнього простору на початку другого рядка.
— Sp3000

@ Sp3000 Дякую за поради!
— Влад274

Будь-яким способом ви могли уникнути f f + 2 + oстільки разів у складному?
— mbomb007

У кращому варіанті - чи є простий шлях до верхнього регістру ? Проведіть цикл підпрограми, яка додає 32 у кожну частину рядка, заощадивши вам кілька унікальних символів, можливо?
— mbomb007

@ mbomb007 Я міг би оптимізувати це за допомогою регістра, або я навіть міг прочитати пробіл із самого вихідного коду. Я супер новачок у Риб, тож не знаю, чи це можливо
— Vlad274

1

05AB1E , 380 байт * 11 символів = 4180 балів

Це потенційно не конкурує

"234413410442342343401431404112421343420421440410421432430413441112423432421431401400112130411432430431112431421421112424421434400441112402421424112414441112422401342344401131213112114314242234112311320243232300112231312304322303112240304323112244320302310313112304321234312112314242234112301230330324112233304241134114112403410433410420403112414401112342112413421421412141"3ô5öçJ

Спробуйте в Інтернеті!

Натискає на базу 5 представлення символів ASCII, об'єднаних разом.
Розбивається на 3 частини, перетворюється назад у десяткові.
Перетворює ціле число ASCII назад в символ.
Приєднується назад.


0

Perl 6, 139 байт * 36 унікальних = 5004

say 'Elizabeth obnoxiously quoted (just too rowdy for my peace): "'~"the quick brown fox jumps over the lazy dog".uc~'," giving me a look.'

0

Java 8, 141 байт * 64 унікальних символів = 9,024

()->{return"Elizabeth obnoxiously quoted (just too rowdy for my peace): \"THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG,\" giving me a look.";}

141 байт, 64 унікальні символи. Підходи, відмінні від простого "повернення рядка", збільшують кількість байтів, не економлячи на використаних символах.



0

Tcl , 345 байт, 345 x 13 = 4485

\160\165\164\163 [\163\165\142\163\164 [\162\145\147\163\165\142 \55\141\154\154 \50\\\144\\\144\51 "055451724142456450 5742565770515765635471 616557644544 \5052656364 645757 6257674471 465762 5571 6045414345\51\72 \"241005 2125110313 0222172716 061730 1225152023 17260522 241005 14013231 041707\"\54 475166515647 5545 41 54575753" \\\\1\\1]]\56

Спробуйте в Інтернеті!


Tcl , 337 байт, 337 x 15 = 5055

\160\165\164\163 [\163\165\142\163\164 [\162\145\147\163\165\142 \55\141\154\154 (\\\144\\\144) "055451724142456450 5742565770515765635471 616557644544 (52656364 645757 6257674471 465762 5571 6045414345)\72 \"241005 2125110313 0222172716 061730 1225152023 17260522 241005 14013231 041707\"\54 475166515647 5545 41 54575753" \\\\1\\1]]\56

Спробуйте в Інтернеті!

Tcl , 329 байт, 329 x 16 = 5264

\160\165\164\163 [\163\165\142\163\164 [\162\145\147\163\165\142 \55\141\154\154 (\\d\\d) "055451724142456450 5742565770515765635471 6165576445d (52656364 645757 625767d71 465762 5571 6045414345)\72 \"241005 2125110313 0222172716 061730 1225152023 17260522 241005 14013231 041707\"\54 475166515647 5545 41 54575753" \\\\1\\1]]\56

Спробуйте в Інтернеті!


Tcl , 333 байт, 333 x 16 = 5328

\160\165\164\163 [\163\165\142\163\164 [\162\145\147\163\165\142 \55\141\154\154 (\\d\\d) "055451724142456450 5742565770515765635471 6165576445d \5052656364 645757 625767d71 465762 5571 6045414345\51\72 \"241005 2125110313 0222172716 061730 1225152023 17260522 241005 14013231 041707\"\54 475166515647 5545 41 54575753" \\\\1\\1]]\56

Спробуйте в Інтернеті!


Tcl , 148 байт, 148 x 37 = 5476

puts "Elizabeth obnoxiously quoted (just too rowdy for my peace): \"[string tou "the quick brown fox jumps over the lazy dog"],\" giving me a look."

Спробуйте в Інтернеті!

Tcl , 277 байт, 277 x 21 = 5817

\160u\164s [subs\164 [\162\145\147sub \55\141\154\154 (\\d\\d) "0554517241b456450 ob56o7051ous5471 61uo6445d(52us64 64oo 62o67d71 46o62 5571 6045414345): 241005 2125110313 0222172716 061730 1225152023 17260522 241005 14013231 041707\" 475166515647 5545 41 54oo53" \\\\1\\1]]\56

Спробуйте в Інтернеті!

Tcl , 371 байт, 371 x 16 = 5936

puts "\105\154\151\172\141\142\145t\150 o\142\156o\170\151ous\154\171 \161uot\145\144 \50\152ust too \162o\167\144\171 \146o\162 \155\171 p\145\141\143\145\51\72 \"\124\110\105 \121\125\111\103\113 \102\122\117\127\116 \106\117\130 \112\125\115\120\123 \117\126\105\122 \124\110\105 \114\101\132\131 \104\117\107\54\" \147\151\166\151\156\147 \155\145 \141 \154oo\153\56"

Спробуйте в Інтернеті!

Tcl , 401 байт, 401 x 16 = 6416

puts "\105\154\151\172\141\142\145\164\150 o\142\156o\170\151o\165\163\154\171 \161\165o\164\145\144 \50\152\165\163\164 \164oo \162o\167\144\171 \146o\162 \155\171 \160\145\141\143\145\51\72 \"\124\110\105 \121\125\111\103\113 \102\122\117\127\116 \106\117\130 \112\125\115\120\123 \117\126\105\122 \124\110\105 \114\101\132\131 \104\117\107\54\" \147\151\166\151\156\147 \155\145 \141 \154oo\153\56"

Спробуйте в Інтернеті!


Tcl , 403 байт, 403 x 16 = 6448

puts "\105\154\151\172\141\142\145\164\150 o\142\156o\170\151o\165\163\154\171 \161\165o\164\145\144 \50\152\165\163\164 \164oo \162o\167\144\171 \146o\162 \155\171 \160\145\141\143\145\51\72 \42\124\110\105 \121\125\111\103\113 \102\122\117\127\116 \106\117\130 \112\125\115\120\123 \117\126\105\122 \124\110\105 \114\101\132\131 \104\117\107\54\42 \147\151\166\151\156\147 \155\145 \141 \154oo\153\56"

Спробуйте в Інтернеті!


Tcl , 433 байт, 433 x 15 = 6495

puts "\105\154\151\172\141\142\145\164\150 \157\142\156\157\170\151\157\165\163\154\171 \161\165\157\164\145\144 \50\152\165\163\164 \164\157\157 \162\157\167\144\171 \146\157\162 \155\171 \160\145\141\143\145\51\72 \42\124\110\105 \121\125\111\103\113 \102\122\117\127\116 \106\117\130 \112\125\115\120\123 \117\126\105\122 \124\110\105 \114\101\132\131 \104\117\107\54\42 \147\151\166\151\156\147 \155\145 \141 \154\157\157\153\56"

Спробуйте в Інтернеті!

Tcl , 473 байт, 473 x 14 = 6622

puts \105\154\151\172\141\142\145\164\150\40\157\142\156\157\170\151\157\165\163\154\171\40\161\165\157\164\145\144\40\50\152\165\163\164\40\164\157\157\40\162\157\167\144\171\40\146\157\162\40\155\171\40\160\145\141\143\145\51\72\40\42\124\110\105\40\121\125\111\103\113\40\102\122\117\127\116\40\106\117\130\40\112\125\115\120\123\40\117\126\105\122\40\124\110\105\40\114\101\132\131\40\104\117\107\54\42\40\147\151\166\151\156\147\40\155\145\40\141\40\154\157\157\153\56

Спробуйте в Інтернеті!

Tcl , 133 байт, 133 x 60 = 7980

puts "Elizabeth obnoxiously quoted (just too rowdy for my peace): \"THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG,\" giving me a look."

Спробуйте в Інтернеті!



Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.