【发布时间】:2014-02-22 08:08:59
【问题描述】:
1+2+4+⋯+2k=1−2^(k+1)/(1−2)
这里,2^k=N。你得到
1+2+4+⋯+N=1−2N−1 2+4+8⋯+N=2N−2
如上所示,数组每 2^k 加倍。但我仍然不明白我锻炼的所有步骤与上述不匹配。谁能给我一步一步的锻炼和解释?
【问题讨论】:
-
这个问题似乎是题外话,因为它是关于数学,而不是编程。
1+2+4+⋯+2k=1−2^(k+1)/(1−2)
这里,2^k=N。你得到
1+2+4+⋯+N=1−2N−1 2+4+8⋯+N=2N−2
如上所示,数组每 2^k 加倍。但我仍然不明白我锻炼的所有步骤与上述不匹配。谁能给我一步一步的锻炼和解释?
【问题讨论】:
开始
1 + 2 + 4 + 8 + 16 + ... + 2k = 2k+1 - 1
如果 2k = N,那么
1 + 2 + 4 + 8 + 16 + ... + 2k = 2k+1 - 1 = 2 · 2k sup> - 1 = 2N - 1
希望这会有所帮助!
【讨论】: