丧心病狂的数字游戏 - Quora翻译

【问】能否使用1,2,3,4,5,6,7,8,9按顺序地计算得到100?

【答0】以下方法不仅可以取到100,而且可以取到任何一个整数:想得到几,就放几个根号。如果想要得到一个负数,就把表达式开头的负号去掉。

下面说一下这是怎么实现的。首先是一个2(这里,我用「-6+7-8+9」来产生2),接着在外面套上n个根号:

于是得到:

为了得到n,我们只需要连续取两次以2为底的对数,并把结果取相反数即可。

【答1】简洁明了的一个表达式

1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 * 9 = 100

【答2】暴力得到的一整个系列

【答3】

【答4】

【答5】使用C语言中的整数除法和取余运算

【答6】1/2/(3/4/5/(6+7+8+9))

写起来就跟一座塔似的

【答7】使用位运算

【答8】在9进制下计算

【答9】不使用四则运算,只用取整、开方和阶乘。当然,计算起来比较花时间。灵感来自 Donald Knuth’s 1964 article “Representing Numbers Using Only One 4”


【问】如何使用四个0得到17?

【答1】首先要承认以下公式:

于是有

所以可以得到

【答2】只使用三个0就可以

【答3】设下式在16进制中完成


【问】如何优雅地得到1?

【答1】令p为任意素数,下式为1(威尔逊定理)

【答2】

【答3】

【答4】


【问】如何从1得到99?

【答1】

【答2】