算法分析
-
什么情况下等差数列与等比数列相同
假如存在样的数列:前三项分别是 a b c那么一定满足 $a + c == 2 * b && a * c == b ^ 2$ 化简一下
a = 2b - c, 代入 ac = bb 中得 2bc - cc = bb ==> bb - 2bc + cc = 0 == > (b - c)^2 = 0 可得a = b = c满足条件
因此就算存在这样数列我们按照等差和按照等比计算结果不影响正确答案。 -
对于等比数列是否存在q = (b/a) 不是整数
假设存在这样的q,不妨设q = m / n , m.n 就算b/a的最简分数,那么数列的第k+1项就是 a*(m/n)^k,由于数列为整数序列
因此就必须存在a / (n^k) 为整数 因为a是一个有限值,当k无穷大的时候显然矛盾,故假设不成立。因此q一定为整数。
md炸了(
?