|
|
1
25
J,102个字符
解释。自下而上阅读:
|
|
|
2
8
红宝石(1.9)-121
|
|
|
3
7
蟒蛇,304个字符没有奇特的Unicode压缩。唯一的诀窍是重新排列字符,使重叠最大化。我的第一个python程序。
|
|
|
4
6
汇编程序 汇编到220字节。
在这里做聪明的把戏的余地不大。 |
|
|
5
5
python 3.1,不带unicode(213
|
|
|
6
3
python 3.1,使用unicode(154
|
|
|
7
2
巨蟒(2.6)--
|
|
|
8
1
Lua,318个字符
我不希望用lua赢得任何代码高尔夫问题,所以在这里回答我自己的挑战我不会感到难过。它还使用了另一种编码方式,我认为其他人可能会感兴趣。 其他观察仔细观察编码后,似乎有一种方法可以不用查表,直接计算条形码的编码。但是,我发现我尝试构建计算所用的代码比表还多。(在其他语言中可能不是这样。)
把人物分成几组,指出宽条和空格的位置,我看到了一些有趣的图案。似乎只有一个很宽的空间容纳40个角色,
1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-._*
1 3 5 8 A C E H K M O R U W Y . 1010100100
23 6 9 BC F I LM P S VW Z _ 0110010010
456 0 DEF J NOP T XYZ * 0001110001
7890 GHIJ QRST -._* 0000001111
12 4 7 AB D G KL N Q UV X - 1101001000 --> Parity
我想这是一个挑战,为另一天看看条码是否可以编码没有查表。 |
|
|
9
0
我在嵌入式系统上用代码39来处理条码。有两种类型的代码,我认为是39个“常规”代码和四个“怪胎”。常规代码有10种条形宽度模式(2宽3窄)和4种空间宽度模式(1宽3窄)中的一种。这些怪胎有五个窄杆和四种杆宽模式之一(三宽一窄)。要使用压缩代码呈现条形码,请将字符转换为数字0-39(对于普通代码),或40、50、60或70(对于“古怪的代码”)。然后Divmod 10.上面的数字将选择八种宽度模式中的一种;如果上面的数字是三种或更少,下面的数字将选择十种宽度模式中的一种。如果上面的数字是4-7,那么所有的五个条都应该是窄的。 代码使用几个小的查找表非常紧凑。因为在源代码中,查找表可以被紧凑地表示为字符串,所以具有较大查找表的方法可能具有较短的源代码(尽管我认为对于代码来说,golf源代码的大小应该使用最有利的编码以字节为单位进行计算;具有一系列奇怪字符的方法用utf-8存储需要3个字节,utf-16存储需要2个字节,对于古怪的字符,每个字节应该“充电”3个字节,对于所有字符,每个字节应该“充电”2个字节,以总数较小的为准)。一种使用完全适合某个特定单字节代码页的古怪字符选择的方法,应该对每个字符收取一个字节的费用。 |
|
|
10
-1
垃圾邮件垃圾邮件垃圾邮件可爱的垃圾邮件 |