这里的大多数人都熟悉七段式显示器,它们也用于火柴拼图。下面是数字0
通9
和信件a
通过z
,除k,m,t,v,w
,写在这个格式。
_ _ _ _ _ _ _ _
| | | _| _| |_| |_ |_ | |_| |_|
|_| | |_ _| | _| |_| | |_| _|
_ _ _ _ _ _ _ _ _
|_| |_ | _| |_ |_ | |_ | | | _ _ |_| |_| _ |_ |_| |_| _|
| | |_| |_ |_| |_ | |_| | | | |_| |_ | | |_| | | | _| |_| | | | |_
这里的挑战很简单。给定输入字符串,输出代表该字符串所需的火柴数量。如果字符串包含上述表示形式之外的字符,则将其忽略(将其计数为0)。
例如,对于输入53
,总共10
火柴是必需的,5
用于5
和5
为3
,所以输出10
。
对于输入hello
,总共19
需要火柴h (4), e (5), l (3), l (3), o (4)
,所以输出为19
。
为了清楚起见,以下是构建每个角色所需的火柴棍:
0 -> 6
1 -> 2
2 -> 5
3 -> 5
4 -> 4
5 -> 5
6 -> 6
7 -> 3
8 -> 7
9 -> 6
a -> 6
b -> 5
c -> 4
d -> 5
e -> 5
f -> 4
g -> 5
h -> 4
i -> 2
j -> 4
l -> 3
n -> 3
o -> 4
p -> 5
q -> 5
r -> 2
s -> 5
u -> 3
x -> 5
y -> 4
z -> 5
现在为转折,其中有两个。
- 首先是输入被认为是区分大小写的。也就是说,即使视觉表示看起来像是大写字母,
A
并且a
两者都应计入6
火柴棒A
。 - 您的分数是通过此算法运行的源代码,加上源代码的长度(以字节为单位),越低越好。例如,如果您的源代码为
abc123
,则得分为6+5+4+2+5+5 = 27 + 6 = 33
。如果您的源代码是#&@()*
,您的分数将是0 + 6 = 6
。
输入/输出示例
0 -> 6
53 -> 10
111 -> 6
112 -> 9
8888 -> 28
hello -> 19
PPCG -> 19
Programming Puzzles & Code Golf -> 99
#&()mt!!~ -> 0
*DḌƤÆE%Ḅċ0 -> 16
规则
[0-9a-z]
,我们应该算上0个火柴吗?我从您的分数中了解到,您的源代码通过此算法运行,加上源代码的长度(以字节为单位)。
|_\n|_
(小写t
)