擅长:python、mysql、java
<p>与其说是编程问题,不如说是数学问题。在</p>
<p>请尝试一个示例:<code>1100101</code></p>
<pre><code>decimal = 0
# First digit: 1
decimal = decimal*2 + int(digit) # decimal = 0*2 + 1 = 1
# Second digit: 1
decimal = decimal*2 + int(digit) # decimal = 1*2 + 1 = 3
# Third digit: 0
decimal = decimal*2 + int(digit) # decimal = 3*2 + 0 = 6
# Fourth digit: 0
decimal = decimal*2 + int(digit) # decimal = 6*2 + 0 = 12
# Fifth digit: 1
decimal = decimal*2 + int(digit) # decimal = 12*2 + 1 = 25
# Sixth digit: 0
decimal = decimal*2 + int(digit) # decimal = 25*2 + 0 = 50
# Seventh digit: 1
decimal = decimal*2 + int(digit) # decimal = 50*2 + 1 = 101
</code></pre>
<p>哇哦!答案是101。在</p>
<p>它的工作原理是每<code>1</code>乘以下面的数字。
这样,值越高的数字实际上会得到更高的值(1,2,4,8,16,32…)</p>
<p>这同样适用于十进制:</p>
<p>尝试:<code>1337</code></p>
^{pr2}$
<p>哇哦!答案是1337。在</p>
<p>附录:
<a href="https://en.wikipedia.org/wiki/Horner%27s_method" rel="nofollow noreferrer">Horner's Method</a>使用相同的原理来计算给定点处的多项式。在</p>