这是一个非常经典的问题,最常见的方法就是重新分组求和。
比如,将1和100分为一组,2和99分为一组,3和98分为一组,以此类推,一直到50和51。
显然,每组的和都是101,一共50组,所以结果为5050。
除此之外,还有另一种方法。首先,摆出一个100乘100的方阵。
那么,包含对角线的右上部分的每一列就对应着从1加到100的每一项。
比如,从左往右的第一列是一个点,第二列是两个点,第三是三个点,以此类推,第一百列是一百个点。
并且,方阵是沿对角线对称的。将包括对角线的右上部分拿开后,左下部分与之正好相差一个对角线,加上一个对角线后,就得到了两个全等的三角阵列。
于是,这两个三角阵列的数量就等于方阵的数量加上一个对角线的数量再除以二,也就是一百乘以一百再加一百除以二等于5050。
很明显,利用方阵的结构来解决这道要更加直观,并且很容易推广至任意等差数列的前n项和。
比如,从1加到n。
除此之外,方阵还可以用在更复杂一点的数列。
比如,从1的平方加到n的平方。
首先,还是摆出一个方阵。不过,这次需要用自然数的前n项替换方阵的每一行。
接下来,还是一样,观察它的包括对角线的右上部分。可知,从左至右,第1列是1个1,第2列是2个2,第3列是3个3,一直到第n列是n个n。正好是对应项的平方。而它的包括对角线的左下部分,从上往下,随着行数的递增呈现出自然数的前n项和数列。这个数列的通项上面已经求出来了。
然后,加对角线后,将两部分分开。
于是,包括对角线的右上部分的数量就等于方阵的数量加上对角线上的数量在减去包括对角线的左下部分的数量。
以此类推,可以求出其它类似的数列通项。比如1的立方加到n的立方,1的四次方加到n四次方,1的五次方加到n五次方,1的m+1次方加到n的m+1次方。
显然,这种求法有一个缺点,就是它需要一级一级的往上求解,不能直接求解任意次数。