编写一个程序,用可选的换行符打印字符串“棕色狐狸跳过懒狗”。整个程序不得重复任何字符。
请注意,要打印的字符串 确实会重复字符,因此您必须以某种方式解决该限制。
注意,获胜条件是人气竞赛,即投票最高的答案获胜。
更新:为了使操作更简单,允许重复,但是您必须尝试将其最小化。具有较少(或没有)重复的程序将优先于具有某些重复的程序。
编写一个程序,用可选的换行符打印字符串“棕色狐狸跳过懒狗”。整个程序不得重复任何字符。
请注意,要打印的字符串 确实会重复字符,因此您必须以某种方式解决该限制。
注意,获胜条件是人气竞赛,即投票最高的答案获胜。
更新:为了使操作更简单,允许重复,但是您必须尝试将其最小化。具有较少(或没有)重复的程序将优先于具有某些重复的程序。
Answers:
没有重复,但不完全符合规格-10个字符:
=rand(2,1)
输出:
The quick brown fox jumps over the lazy dog.
The quick brown fox jumps over the lazy dog.
符合规格,除了大写和标点符号外,重复一遍-10个字符:
=rand(1,1)
输出:
The quick brown fox jumps over the lazy dog.
较新版本的Microsoft Word使用 =rand.old(1,1)
d
与和重复的形式1
。
可能有一种方法可以将字段{=SUM(3,-2)}
用作rand()的输入,但是我的安装存在字段问题-即,它们无法正常工作...
“鲍勃”已经确认{=SUM(3,-2)}
(有些困难)可以用来代替第一个1
,但是=
重复出现...
=rand({=SUM(3,-2)},1)
如果让Word先更新SUM
,则输出为:
The quick brown fox jumps over the lazy dog.
=rand.old(1,1)
。我想您正在尝试使用3-2代替前1个,但在rand.old或rand看来,它似乎在2010年不适用于我。
{=SUM(3,-2)}
在Word 2007中确认工作。但是该方法有点复杂。首先,您必须插入一个域代码(Ctrl + F9)。然后,右键单击=>编辑字段=>公式=>高级=>键入公式。因为无论出于什么原因,直接输入都不起作用。现在,单击字段并使用Shift + F9进行评估。并=rand.old()
=SUM
还是直接使用算术运算符3-2
?
덆둥긇굵늖꽫긆깲닷덮긂롦닲롸껂걪덖륰댲걯덦넬댢건늆넠닆굺뎒걤닶댬首坼
(预计输入为空)
Push the string "the quick brown ,fo,x, jumps ove,r the lazy dog,"
덆둥긇굵늖꽫긆깲닷덮긂롦닲롸껂걪덖륰댲걯덦넬댢건늆넠닆굺뎒걤닶댬
Retrieve last character from the string (",")
首
Regular expression string-split
坼
结果是list ["the quick brown ", "fo", "x", " jumps ove", "r the lazy dog", ""]
,它会自动连接成单个字符串以进行输出。
脚本(将由板卡软件破坏,但En Space最多为Thin Space,NL和LF以及制表符)
say EVAL lc q{<the Quiţk Brown fïX jUmpS ůvťɲ Tɨå ìšzY dOg>~&(127.CHR
x
43)}
<foo bar>
引用支持所有特殊空格字符的单词作为单词分隔符。say
使用空格加入字符串列表,在这里效果很好:)~&
和127来将shuffle转换为纯ascii。额外的复杂性:'Ŭ'.lc
变得'ŭ'
如此,s
而不是r
我所需要的。增加128次可以帮助:)带有反斜杠的版本转义而不是Unicode字符,以显示它们都是不同的
say\x[3000]EVAL\x[9]lc q{<the\x[2003]Qui\x[163]k\x[2004]Brown\x[2005]f\x[EF]X\x[2006]jUmpS\x[2007]\x[16F]v\x[165]\x[272]\x[2008]T\x[268]\x[E5]\x[2009]\x[EC]\x[161]zY\x[200A]dOg>~&(127.CHR\x[0A]x\x[0D]43)}
如果要验证它们是否都是唯一的,请使用此脚本(我Qb"string"
以前仅使用反斜杠转义符进行基本引用)
.say for
Qb"say\x[3000]EVAL\x[9]lc q{<the\x[2003]Qui\x[163]k\x[2004]Brown\x[2005]f\x[EF]X\x[2006]jUmpS\x[2007]\x[16F]v\x[165]\x[272]\x[2008]T\x[268]\x[E5]\x[2009]\x[EC]\x[161]zY\x[200A]dOg>~&(127.CHR\x[0A]x\x[0D]43)}"
.comb.Bag.grep(*.value > 1).map: {.key.ord.base(16) ~ " $_" }
或直接使用执行
EVAL Qb"say\x[3000]EVAL\x[9]lc q{<the\x[2003]Qui\x[163]k\x[2004]Brown\x[2005]f\x[EF]X\x[2006]jUmpS\x[2007]\x[16F]v\x[165]\x[272]\x[2008]T\x[268]\x[E5]\x[2009]\x[EC]\x[161]zY\x[200A]dOg>~&(127.CHR\x[0A]x\x[0D]43)}"
<?echo$g^¶¥€¼½ˆ•.${~˜}=ÂÍåœÌýü¡¦Åþ¾’‹Ï†£‘ƲáºëÓâæݗߙ󖎸·³ø‰ï®ÜØÔ;
复制粘贴,另存为Latin-1(Ansi)。
这是一个7字节的异或密码,使用字符串¶¥€¼½ˆ•
表示盐。
一个重复的字符:$
。
<?=
由于您已经在使用短标签,因此可以通过使用它来将其再缩短3个字符
eval('Return$g=binary;')
某种神秘的形式使用(也许是位反转)以避免$
重复,然后=
也可以将它们释放。
;
可以用结束标记代替:也应该不算在内吗?简而言之,我不同意。如果您的代码未按原样运行,则它不是一个完整的程序。
echo %1
如果脚本名为hello.bat,请在命令行中键入以下内容:
hello.bat "The quick brown fox jumps over the lazy dog"
Hello world!
没有重复就很难了,以至于人们不得不诉诸于非常利基的语言,或者彻底无法完全解决这一任务,而在此之上,这则要困难得多。