您的目标是编写一个不带任何输入并输出以下文本的程序:
ca e na ŋa va o sa;
þa ša ra la ła.
ma a pa fa ga ta ča;
în ja i da ða.
ar ħo ên ôn ân uħo;
carþ taŋ neŋ es nem.
elo cenvos.
但是有一个陷阱:L
您的来源中的每个字母(Unicode中一般类别以开头的任何字符)都会受到20个字符的罚款!(供参考,要打印的文本有81个字母。)
下面的Perl 6代码具有145个字节和84个字母,因此得分为1,845:
say "ca e na ŋa va o sa;
þa ša ra la ła.
ma a pa fa ga ta ča;
în ja i da ða.
ar ħo ên ôn ân uħo;
carþ taŋ neŋ es nem.
elo cenvos."
下面的代码具有152个字节和70个字母,因此得到1,552的得分:
$_="C e N ŋa V o S;
Þ Š R L Ł.
M a P F G T Č;
în J i D Ð.
ar ħo ên ôn ân uħo;
Crþ Tŋ neŋ es nem.
elo cenvos.";s:g/<:Lu>/{$/.lc~'a'}/;.say
禁止出现标准漏洞。
最初,我曾考虑过完全禁止使用字母,但是我认为没有多少语言可以实现这一点。非常欢迎您尝试。
(ŋarâþcrîþ[ˈŋaɹa̰θkɹḭθ]是我的母语之一。我想在这里使用大写字母,但在这里却得到了丑陋的大字号。哦,好吧,该语言反正也不会使用大写字母。)
编辑:意识到其中一行是错误的,但由于已经有答案,我将保留它。第三行的正确版本是ma a fa ga pa ta ča
; 您可以选择生成更正的文本。
a
s 进行编码-取决于是否有多少之所以要使用字母,是因为20个字符确实是一个很大的惩罚(尽管当其他所有内容都按字节计分时,它的定义还不是很清楚...)!