Code Challenge - Самый Большой Словарь Существительных Катлани В 400 Байтах

  • Автор темы Wugar
  • Обновлено
  • 23, Oct 2024
  • #1

Катлани — искусственный язык, разрабатываемый в чат. В этом задании ваша цель — напечатать максимально большой словарь существительных катлани размером не более 400 байт.

Задача

Ваша программа должна напечатать список существительных катлани размером не более 400 байт. Вы можете вывести их в виде списка/массива на вашем языке или в виде строки с любым (не обязательно последовательным) неалфавитным разделителем, например символами новой строки или запятыми. Заглавные буквы и сортировка слов не имеют значения. Слова, которых нет в списке, не допускаются в вывод, но дубликаты разрешены.

Список существительных, из которых вы можете выбрать:

 abail
abikis
ak
akniton
alfabit
atirsin
atom
ats
aypal
baka
baklait
banl
bgil
bianto
bit
bo
boraky
borsh
bot
br
brbrno
byt
daosik
diga
digiz
dogo
dolmuk
dongso
douv
drarkak
fa
fafasok
fasmao
fidr
floria
fridka
friv
fully
fylo
fyrus
gilmaf
gogu
gogzo
gongul
gorlb
gosio
gratbt
gutka
hisi
horrib
hurigo
inglish
iomshuksor
isa
ispikar
isplo
ita
iushb
izlash
kaikina
kat
katisas
katlani
kfaso
khalling
kisongso
kivsk
klingt
kod
koik
kolbat
komy
konma
korova
koss
kotsh
kris
kromir
ksik
ksuz
ktaf
ktomish
ktomizo
la
lan
lgra
loshad
lyly
mak
makanto
makav
makina
marinolus
marta
matiks
mim
mimhis
mingso
mitsh
molo
mosdob
motif
motkop
movogal
muratsh
mutka
naita
ngoirfo
nidriok
nilo
nin
nini
ninibr
nirus
noguna
nolif
nors
o
ogig
omkop
onion
opru
orilha
orni
ozon
papin
paslo
pasrus
pirishy
pluban
polr
posodo
pouk
produty
rak
raznitsa
rigiks
rilifior
riomr
rno
ronta
rus
ryby
sabbia
sai
sakar
saman
sandvitsh
sasa
sfiny
shatris
shidoso
shilan
shimshoom
shor
shotiya
shuan
shubhu
shuksor
shuriok
shutis
shutrak
shyba
sibas
sibin
simriomr
sod
sokit
spamra
spamt
srirad
sutka
taika
tipstor
tizingso
tksu
tobl
tokvod
tomp
tonfa
toto
totobr
tshans
tshimiso
tshomp
tura
tuvung
uboiak
umub
vaf
vintz
voda
vodl
vontark
y
yntsh
zimdo
zivod
zombit
zorliplak
 

Подсчет очков

Победителем (для каждого языка) является ответ, который может напечатать наибольшее количество уникальных слов из словаря. Ничьи разбиваются по количеству байтов, поэтому, если двум ответам удастся напечатать все 200, победит более короткий из двух.

#вызов кода #комплексность по Колмогорову #ограниченный исходный код #естественный язык #открытая функция

Wugar


Рег
27 Feb, 2014

Тем
81

Постов
190

Баллов
645
  • 26, Oct 2024
  • #2

JavaScript (ES6), 400 байт, 104 слова

 
 
 
 
 
 
 
 
 
 
 
 VPauvY#?D`X=`b7AYp56X>@OHAYp7~VPa`?AYpWAa&u{JAYpWGZ6INEb0A@PaA9m9Vqt4xAYx%_Y+-41AYx%|Y#?H1X>1^3X<=@3Zy;i6bRc4Ha$#$EAYyNFb7&x9Z*(AHav)-IVsdV8AYyrRAY@^0b7^ZJWNBw%AY^H0X?h@JZ)a~HWN&P3b!#AGZ*FIEZy;oEb#@?Ra$$07VQU~}VP;`-Z)+fCVRLO^Zy;uAWO5*8Y;SUDVIXF5X=H0*AZBuDb|7YTY;1WTW_fIHAZB@Tb#owRX>4s_W*}#8XLTTFZ)bXMAZKrGXLW2KXK!+BVjyR4b7^lNXL4b5Vss#9b#!ZCAZTfGX&`8Ca&l>6
 

Почти наверняка это будет искажено из-за странного Юникода, но здесь используется строка байтов, которая, если она представлена ​​расширенной кодовой страницей ASCII (например, той, которая используется по умолчанию в HTML), будет равна ровно 290 байтам. Остальные 110 — это декодер, который разбивает каждый байт на 4-битные полубайты и сопоставляет их с одной из 15 букв или запятой.

Проблема в том, что это ровно 400 байт, и в строке не остается места для обратной косой черты. JS довольно хорошо игнорирует управляющие символы и прочее в строках, поэтому все, о чем мне нужно беспокоиться, это import base64;print(base64.b85decode(b'VPauvY#?D`X=`b7AYp56X>@OHAYp7~VPa`?AYpWAa&u{JAYpWGZ6INEb0A@PaA9m9Vqt4xAYx%_Y+-41AYx%|Y#?H1X>1^3X<=@3Zy;i6bRc4Ha$#$EAYyNFb7&x9Z*(AHav)-IVsdV8AYyrRAY@^0b7^ZJWNBw%AY^H0X?h@JZ)a~HWN&P3b!#AGZ*FIEZy;oEb#@?Ra$$07VQU~}VP;`-Z)+fCVRLO^Zy;uAWO5*8Y;SUDVIXF5X=H0*AZBuDb|7YTY;1WTW_fIHAZB@Tb#owRX>4s_W*}#8XLTTFZ)bXMAZKrGXLW2KXK!+BVjyR4b7^lNXL4b5Vss#9b#!ZCAZTfGX&`8Ca&l>6')) (NUL), .•2Z₃LSι#@#«Σ±ñÿ˜¸‚÷ý…qÄнβŠŒäãΣαÑz@W|RÈÚ<¸´_£]ºRùƒl®нJë2k‘ƶ9žΔÍ2s`0õÙ{óžM¨àWhà —'ïš<G¾¯×c†}À|Òé´8N/§j::&βxΓ"oÑ.ðË¡ÄΛ™ζÒ₅¬]õ2bэç9.d€γβвΣ;$θǝØ,ó=-ž4󧸙₃λ¬ÍÕ~Oì&^uÜ≠¥ƒvé©^Ûïæ(7I†=^;L½ÃÜ-+ÙXe‡¯ÚŒ†zÏZ₁≠pxÎUθè±t&∊s†è-ÚÎîÓEd£¤Áà³à^]I>ûr\ú±ÉþϘ2ƒv´g¸>[—üéÃ≠JQG0(*ŠØ²DƵδтÕây/Y*.¤\4hVÌè¯ʒ<ÊvßëĀиðθH₆÷aΔθåŸнā₅·…˜l’ƶ8¥þ“Àöë₄æ*b₁¤—εÒ¥QëQÒeн≠Càz”9†Í=<Xóγ¯mpð]BIÅтîƒ6ƒ°ĆAćγΣß”/8#Dv:‡‘{zƒ$ƒFэ¼[v¡bËδv͸špîÈfa÷ÆðÛн‹ (который искажается преобразованием новой строки), `ab₴⁋ ak ƈ¶ ₴ǒ ay₃⁺ b√ṫ b□× b£ṫ Ǎ₂ǎǏ °ẋ bo b⋎≈h ǍĊ br Ǎ∩ d⋏ė d⋏ḟz d꘍τ ›¢£ǎ ∩ḟv fa ⊍½…ƈk ⊍†Ǐẏ f⋏ø ⊍¾≥‹ fȦ‹ka ß≠v ↔¥ fƒİ fy≥₃ £ṫǏ⟨ g꘍ȧ £₆zo £§£Ḣ g⋎Ċb go∪ḋ gr₴↵t £Ȧka ¥₈≥ḟ ¥Ġ⋏ġ ḋ₌l⋏÷ ₍₴ i∪…kar isɖ„ ↲₍ iꜝ⁺b izl⁋‛ Ṅ⋎k⋏£ kat kµ₴Ẇ≠ k₴≬…„ kf…ƈ k€Ḟḋ₌ ki↔Ṡo kivsk klḋ₌t kod koik kolḂṙ k꘍¼ koǏṗ k⋎§va koss k⋎Ṡh k≥τ kroǏḂ ksik ksuz k≠ʁ k¢‹⋏÷ kt꘍⁽zo la ȯ¡ l£Ẇ †ṫλ‡ lƒṖ mak m√ṫv s¥₈ shꜝø ∪Ǐǎ⌐ ∪Ǐ≠ḣ shƒ≠ siǍḟ si½ǔ` , и # removed o y let uwords |.%"abail abikis ak akniton alfabit atirsin atom ats aypal baka baklait banl bgil bianto bit bo boraky borsh bot br brbrno byt daosik diga digiz dogo dolmuk dongso douv drarkak fa fafasok fasmao fidr floria fridka friv fully fylo fyrus gilmaf gogu gogzo gongul gorlb gosio gratbt gutka hisi horrib hurigo inglish iomshuksor isa ispikar isplo ita iushb izlash kaikina kat katisas katlani kfaso khalling kisongso kivsk klingt kod koik kolbat komy konma korova koss kotsh kris kromir ksik ksuz ktaf ktomish ktomizo la lan lgra loshad lyly mak makanto makav makina marinolus marta matiks mim mimhis mingso mitsh molo mosdob motif motkop movogal muratsh mutka naita ngoirfo nidriok nilo nin nini ninibr nirus noguna nolif nors ogig omkop onion opru orilha orni ozon papin paslo pasrus pirishy pluban polr posodo pouk produty rak raznitsa rigiks rilifior riomr rno ronta rus ryby sabbia sai sakar saman sandvitsh sasa sfiny shatris shidoso shilan shimshoom shor shotiya shuan shubhu shuksor shuriok shutis shutrak shyba sibas sibin simriomr sod sokit spamra spamt srirad sutka taika tipstor tizingso tksu tobl tokvod tomp tonfa toto totobr tshans tshimiso tshomp tura tuvung uboiak umub vaf vintz voda vodl vontark yntsh zimdo zivod zombit zorliplak"~ \w ?==w "yntsh" w *" "`%w"sh" # don't convert this word because the jump to zimdo would be 6 then - 7 ,$ hex / |.,~ \i let words +=~ uwords \w `# :w i 4273 # this essentially permutes the words randomly # permuting randomly is more efficient than searching through permutations in order as small changes will actually likely map to the same encoding (i.e. if you swap words of different lengths that will get undone during the encode process). let takewords 159 let bestchars -" abdfghiklmnoprstuvyz" "" let selectedwords | | words ~ \w | w ~ \l ? bestchars l - 7,$ let nc ,bestchars let bestwords < takewords +=~ selectedwords ,$ let sortedwords +=~ +=~ bestwords ,$ =1$ let tailed .sortedwords>>$ let lens \:1 ! sortedwords >>sortedwords ~ \w1 w2 let lengthdiff -,w2,w1 let chardiff - ?bestchars =1w2 ?bestchars=1w1 +lengthdiff *5 chardiff let data . sortedwords \word let wd ! bestchars word ? >>. wd \c1 -c1~ let d1 `@ nc +data let d2 `@ 6 lens let d1p *d1 ^nc ,`@ nc d2 +d1p % -d2 `@ 6 \<,lens \`@ 6 d1p ^6 takewords \fd * ==| " abcdefghijklmnopqrstuvwxyz" \c `#~ :o c `@ 256 fd 4 " abdfghiklmnoprstuvyz" - 737 ,hex fd # max size 736 (sometimes it is 737 for unknown reasons) $ .

Я мог бы пожертвовать несколькими словами и избежать их с помощью (1/4)**7*(3/4)**20 , but that seemed like a bit of a waste. The solution I came up with was figuring out the representation of these four characters as nibbles ( " abcdefghijklmnopqrstuvwxyz" to "111010111101111110111110011" so that after filtering it, it becomes " ab d fghi klmnop rstuv yz" (without the spaces) , `# , `D <base> , и *"sh"`% WORD_GOES_HERE " " ), and all of the pairs of letters in the words that never appeared beside each other. Then, I could map those letter pairs to the bytes I didn't want to appear. I ended up with .=\ `\ <159 \`D 6 + ~"o y" `D 21 \c unused dat *"sh"`%! |fstLine `# $ 4 #" abdfghiklmnoprstuvyz" +~:`/c 5 sets m `<+m~ dat sets w = " " w $ для nibbles words.nbl < /dev/null , .=\`\<159\`D 6+~"o y"`D 21*"sh"`%!|;@`#$4+~:`/@5`<+$~;@=" "$$45f31d2e733373ab092b79e7b544370bc7a0e362d8beeb825fe11e496df679b92e76991f03d6bc7f4389125c5b3648e326c221e31340945b6a79d28e6cbafaf177dccffd45c3e0e544365a8c973aed312eb485f57c8d861d18c62044842f41b7db23a106ede98d24c314c9d979ba388abeed82b04e848d8a9b6e44aafbb4bc0a7eae60687b13ecba3c0c240b05f7a0b2910a1843ca0af8f46849d9a565d695255ae19b2c954869ba9662723e903f422af11ef182dc00343885921657571bd40757f46ba10eda6a60e78c37ba913f26c93db1c2e1b9714d6c2601f504eba9cb0fff65d060cf08156986b079ae1046cd3dc1415a1daad9d57a79d13a271c9bc788631440d1ee118a40099517ce55c1389854cf0afa17ad73765d017de916abb93abfa49ff8d2d77382ab8f89db95a4ff8ce929bccd1435a1c98f9af7e67fe1847e6cdb348fad50d8c2c7ed5efd26bf7b838a985bc0bffe0a5168fcad28060f974b40c7dcf00b562ed1cbc3937ce387e71f для zopfli -c --deflate --i300000 words.txt , ` для 00000000: 15cc 810a c520 0885 e157 3dc6 5893 4a87 ..... ...W=.X.J. 00000010: d685 f6f4 f704 f9fd cd41 b25f e990 227a .........A._.."z 00000020: d4a6 0999 3e08 2f0d 459a 10eb 2855 898a ....>./.E...(U.. 00000030: 4d67 260a e321 6d9f e443 b9db 9ce0 2961 Mg&..!m..C....)a 00000040: 8e4b ab7e 47c1 e5d5 89d5 3c59 3fdc c293 .K.~G.....<Y?... 00000050: 431c 77e8 d5e4 845b bd02 f7ea 7de3 dedd C.w....[....}... 00000060: 49ac 44f5 ba0e 9f53 abab 33d1 0b4d e56a I.D....S..3..M.j 00000070: cd26 7834 158f 4768 814e 81e6 99b7 3b74 .&x4..Gh.N....;t 00000080: e5c3 ddd7 251f 3499 685d ad32 7e71 b491 ....%.4.h].2~q.. 00000090: b149 2f32 99f0 9f30 368e 331f 9a89 163e .I/2...06.3....> 000000a0: 3418 e53d b591 f5a1 4db9 d185 c7d0 6bf0 4..=....M.....k. 000000b0: b2fb c690 7646 7e47 3561 6252 1d8f e609 ....vF~G5abR.... 000000c0: c76a 3a73 de1f de9d e4e5 8599 cddf 13bd .j:s............ 000000d0: 31d6 6c02 139d 54bb 133b a338 9460 6225 1.l...T..;.8.`b% 000000e0: cceb 3261 bade 3412 0eaf 5ae1 e3bc e5a6 ..2a..4...Z..... 000000f0: 6ef0 3716 3cb4 3fc2 98c2 3f6e 5f79 f598 n.7.<.?...?n_y.. 00000100: e79d b7af 22fc f2f4 cb99 1e64 3584 70b4 ...."......d5.p. 00000110: 6a4b c647 20cc 116e 5310 8bbb 5d36 524a jK.G ..nS...]6RJ 00000120: 5161 94d3 24e8 10a3 c9e5 adb6 918f 7631 Qa..$.........v1 00000130: c683 2cb1 6379 d6c9 d464 7611 a416 c9a3 ..,.cy...dv..... 00000140: 1ad2 9b4e 7a21 5f19 2138 e122 3484 bb35 ...Nz!_.!8."4..5 00000150: 9b60 8a1e 5b2e 4c2f 9db4 9f5f cc78 89dd .`..[.L/..._.x.. 00000160: 42a7 e350 0233 1fb1 3cf1 f37f 8590 dfb2 B..P.3..<....... 00000170: 8a55 5ca5 618d 55f0 931b 3fb5 f981 4fc9 .U\.a.U...?...O. 00000180: a163 63db cc07 9f8e cb29 97f8 7c14 9d7f .cc......)..|... , _=>require('zlib').inflateRawSync(Buffer("HY+BCgQhCEQ/dTBiOylz0TrY/fqbDppnipYjHbLciESRLsQcKE0JXSjOE/khmQTKs1C1Cao3J2bLE/YXl+DSGrhCK59hYG2P8eB6hhOxE83bPnidjFHIVN734sjHI7RAU6ibM7oEXRa6V0o7YQ8xjXUP/56QSSxu2EN5zdOW+0VfcmEIz8RoITDpVPBNU6POjDm/MV/db9h/iamsTJ1H+gddTx96kZFweNMGtzPiU33C79jwYLu/TG8fQeyO4I+hboGYjuM/RakuQRoXS6HZpHFil89meAorWoTNtJ23GHc/YWHRGJaXQdhNLP+DG9KMzMS2XfD1KgcDD1616iTTHw","base64"))+'' для _ , and oa для nr . since ag , aa , a , and o never appear in the list of 104 words I chose.

 

Osetroff


Рег
12 Feb, 2005

Тем
81

Постов
187

Баллов
622
  • 26, Oct 2024
  • #3

JavaScript (Node.js), 399 байт, 96 слов

Простое сжатие zlib с кодировкой base-64. Возвращает одну строку слов, разделенную знаком c .

r

Попробуйте онлайн!

Как?

Это результат случайного поиска, при котором каждая итерация сохраняет слово \$W\$ длины \$L\$, если случайное значение \$k\in[0\dots1]\$ удовлетворяет:

$$ k>\frac{(L-1)^2}{30} $$

На самом деле это всего лишь предположение, в котором сохраняются все однобуквенные слова, отбрасываются все слова длиной более 6 символов и используются промежуточные вероятности от 17% до 97%.

 

Uholovo


Рег
26 Sep, 2014

Тем
80

Постов
189

Баллов
609
  • 26, Oct 2024
  • #4

Древесный уголь, 400 байт, 139 слов

Попробуйте онлайн! Ссылка на подробную версию кода. Просто сжатая строка, основанная на списке слов Bubblegum @ovs, за исключением того, что решить, какие девять слов удалить, было по меньшей мере интересно, поскольку удаление некоторых слов фактически увеличивает количество байтов!

 

Pavel000


Рег
18 Sep, 2007

Тем
81

Постов
187

Баллов
652
  • 26, Oct 2024
  • #5

Жевательная резинка, 147 148 149 слов, 400 байт

5

Попробуйте онлайн!

Общий базовый алгоритм сжатия. Печатает все слова длиной до 4, большую часть длиной 5 и некоторые слова длиной 6. Слова разделяются n .

Фактические слова длиной 5 и 6 находятся с помощью простого случайного поиска, но количества каждой длины являются всего лишь предположениями. Порядок слов в основном алфавитный, но некоторые слова я перемещал вручную. Я не могу точно сказать, почему перемещение некоторых слов дает улучшение, но экспериментируя, мне удалось сэкономить 1 или 2 байта. Я уверен, что лучшего результата можно было бы добиться при более систематическом и автоматическом поиске.

Список сжат d .

 

Vad543


Рег
09 Sep, 2016

Тем
57

Постов
178

Баллов
503
  • 26, Oct 2024
  • #6

закуски, 161 слово, 400 байт.

g

Это 64 полубайта кода и 736 шестнадцатеричных цифр данных по полбайта каждая.

Nibbles еще не на TIO, но запустите его так:

0

Негольфированная версия:

a

(шестнадцатеричные данные те же)

По сути, метод заключается в кодировании каждой буквы в данных по базе 21, но с одним ключевым трюком.

Обратите внимание на эти две неэффективности этой тривиальной кодировки.

  • Если список отсортирован, то следующая первая буква будет такой же или на 1 больше.
  • Пространства являются, безусловно, наиболее распространенными

С помощью этой хитрости пробел и следующая первая буква могут быть закодированы одной шестизначной цифрой! Это экономия 125 байт данных.

Сначала отсортируйте слова в алфавитном порядке по первому символу и длине.

Теперь вычислите разницу в длине слов, добавив 6, если они различаются по начальной букве.

Эти числа теперь кодируют длину следующего слова и начальные буквы. 60 which is 5 bytes. The next most common combo (15ish occurrences) isn't common enough to save anything unless the decoding process becomes more efficient.

Таким образом, если последнее слово было «атс», а цифра — 2, это означает, что следующее слово также начинается с «а», но имеет длину 5. Теперь, если следующая цифра — 2, это означает, что следующее слово начинается с «б» и имеет длину 3. Это связано с тем, что нет закодированных слов из 7+ букв и слов из 1 буквы (по этой причине o и y обрабатываются специально). 5c . But since the data needs to be used for both lists, we reverse it for one of them and truncate it. The non truncated list will have garbage data at the end, but this will never be consumed the way the program is written.

Одна проблема, с которой я столкнулся, заключается в том, что в тексте всего 160 слов <7 длиной. Но если мы обработаем хотя бы одно слово из 7 букв, вышеуказанному методу потребуются семизначные цифры по основанию, что добавит около 5 байтов данных. Чтобы обойти эту проблему, я кодирую все «sh» как пробелы, что фактически делает слова, в которых есть sh, короче. Это наиболее распространенная комбинация букв (используется 23 раза в используемых словах), но этот трюк на самом деле не особо экономит, поскольку увеличивает базу, в которую закодированы буквы, и требует кода для обратного преобразования. При каждом использовании сохраняется одна цифра по основанию 21 (-12,5 байт), но требуется основание 21 вместо 20 (+5 байт), а код декодирования

Способ кодирования списка по основанию 21 и списка по основанию 6 заключается в использовании функции полубайтовых данных, которая позволяет вам кодировать одно число после вашей программы без каких-либо терминаторов (обычные числа будут использовать 1 бит из каждых 4 для завершения или нет). Это чистое число, а не список, но его можно извлечь до нужной базы с помощью 0d also uses data as salt, so if we have enough degrees of freedom in our encoding then we can create a hash that will deterministically map:

00

Есть еще один полезный трюк, который экономит около 8 байт: именно так кодируется алфавит: «abdfghiklmnoprstuvyz». \ if we take the hash value mod 4 and use 0 as false and 1 2 3 as true. This is about 1 in 5 million. Notice that we can permute sets of words that have the same starting letter and length. This will change the encoded data, but will still give a correct output. There are also multiple 6 letter words that aren't used (now that sh is 1 letter), so that is another degree of freedom.

Вместо того, чтобы кодировать это напрямую, мы используем удачу. Хэш-функция Nibbles

Вероятность того, что это отображение произойдет, равна

\

К счастью, поиск методом грубой силы по случайным перестановкам начальных слов занимает всего около 1 часа.

Я подумал об использовании чего-то вроде кодировки Хаффмана, поскольку некоторые буквы встречаются часто, а другие — редко. Это сэкономило бы около 30 байт данных, но теперь вам нужно закодировать, по крайней мере, порядок общности алфавита (а затем предположить на нем некоторую функцию вероятности, хотя на самом деле она довольно линейна). Это займет не менее 10 байт. Я не думаю, что этого останется достаточно, чтобы что-то декодировать и сохранить.

Я немного удивлен, что этот метод сработал так хорошо, не обнаружив никаких других закономерностей в данных. Но похоже, что нет других очевидных шаблонов, которые были бы настолько сильны, чтобы их стоило использовать для извлечения кода.

 

Евгений-19877


Рег
10 Jan, 2015

Тем
83

Постов
213

Баллов
658
  • 26, Oct 2024
  • #9

Python, 46 слов (397 байт)

\0

Текст в кодировке Base85 для тестирования:

_=>`oï�ño�÷� ��¯�¯�¯9�:�@¯p_�O��S_ÀOÅoË��э hñ���WñÓÖÛò9?F4ôhïF�ôÃ�I4÷Ü�~~øgoSvõ5?VÉöÓßlSüáï��ù&Ϥ�úa¦¦ú¼�¸±ð�7ñl�ýlqýi6ýº@ó¹!ôe�ôj�ø� ø:�øº@õ� õ<¹öSeü6�üe ù��ù��ù+�ù.�ù1 ù15ùd:ùº@ú�@þZ�ð�C���¦ñl�ï��VýeÛÜ �òlÃ�+ÃÖôs]¯Fq ôÆ�Ï�CPø 4���9ø5ÙoSS�õmµ�l7 ü=4���0ù#p_�±+ù+£�¦¦�ú���±c�ðE:eð£É5ñ�p:ó]s�`.replace(r=/./g,x=>x.charCodeAt().toString(16).padStart(2,0)).replace(r,y=>"abhiknolmsturgy,"[+("0x"+y)])

Попробуйте онлайн

 

Nsvxoqcfkh


Рег
08 Apr, 2014

Тем
78

Постов
225

Баллов
655
Тем
403,760
Комментарии
400,028
Опыт
2,418,908