Locked. This question and its answers are locked因为该问题是题外话,但具有历史意义。它当前不接受新的答案或互动。
我使用这些规则制作了最终的笑声发生器。您能以自己喜欢的语言巧妙地实现它吗?
规则:
在每次迭代中,都会发生以下转换。
...这是单行版本:
测试:
我使用这些规则制作了最终的笑声发生器。您能以自己喜欢的语言巧妙地实现它吗?
规则:
在每次迭代中,都会发生以下转换。
H -> AH
A -> HA
AA -> HA
HH -> AH
AAH -> HA
HAA -> AH
n = 0 | H
n = 1 | AH
n = 2 | HAAH
n = 3 | AHAH
n = 4 | HAAHHAAH
n = 5 | AHAHHA
n = 6 | HAAHHAAHHA
n = 7 | AHAHHAAHHA
n = 8 | HAAHHAAHHAAHHA
n = 9 | AHAHHAAHAHHA
n = ...
最佳答案
MATLAB(v7.8.0):
73个字符(不包括用于使其看起来可读的格式字符)
该脚本(“ haha.m”)假定您已经定义了变量n:
s = 'H';
for i = 1:n,
s = regexprep(s,'(H)(H|AA)?|(A)(AH)?','${[137-$1 $1]}');
end
...这是单行版本:
s='H';for i=1:n,s = regexprep(s,'(H)(H|AA)?|(A)(AH)?','${[137-$1 $1]}');end
测试:
>> for n=0:10, haha; disp([num2str(n) ': ' s]); end
0: H
1: AH
2: HAAH
3: AHAH
4: HAAHHAAH
5: AHAHHA
6: HAAHHAAHHA
7: AHAHHAAHHA
8: HAAHHAAHHAAHHA
9: AHAHHAAHAHHA
10: HAAHHAAHHAHAAHHA
关于puzzle - 高尔夫代码:自动机,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/831915/
10-13 08:54