【发布时间】:2009-09-03 21:29:55
【问题描述】:
挑战
从输入字符串生成波形的按字符计数的最短代码。
通过提升 (line-1) 较高的字符和降低 (line+1) 较低的字符来生成波浪。相同的字符保持在同一行(不进行提升或降级)。
输入仅由小写字符和数字组成,字母被认为高于数字。
测试用例:
Input:
1234567890qwertyuiopasdfghjklzxcvbnm
Output:
z
l x v n
k c b m
j
h
g
y p s f
t u o a d
w r i
9 q e
8 0
7
6
5
4
3
2
1
Input:
31415926535897932384626433832795028841971693993751058209749445923078164062862
Output:
9 9 8 6 6
9 6 8 7 3 3 4 2 4 8 9 88
3 4 5 2 5 5 2 33 3 7 5 2 4 9 9 99 7
1 1 3 2 0 1 7 6 3 3 5 8 8 6
1 1 5 2 9 9 3 7 1 4 6 8
0 0 7 9 5 2 0 0 2 6
4 44 2
代码计数包括输入/输出(即完整程序)。
【问题讨论】:
-
只是好奇罗塞塔石与这有什么关系?
-
来自另一个问题的评论:“如果你想要尽可能多的答案,尽可能多的语言,你可以添加标签 [rosetta-stone]”
-
@jdelator,这意味着欢迎提交并寻求尽可能多的语言。指的是原始的“罗塞塔石碑”,而不是 Apple 对同名代码的实现。
-
这取自这里:golf.shinh.org/p.rb?wave+line 检查该网站,寻找解决这些相对业余的黑客工作的解决方案。
-
当然,其中一些 shinh.org 浪潮很小。有两个 Ruby Wave 都获得了令人印象深刻的低于 80 字节的分数。然而,每一个至少有两个问题,一个甚至产生错误的输出。我的可能是 122 字节,但我认为这肯定不是业余黑客工作。你知道,因为它,嗯,有效?
标签: language-agnostic code-golf rosetta-stone