【欧拉计划第 6 题】和的平方与平方的和差值 Sum square difference

简介: 【欧拉计划第 6 题】和的平方与平方的和差值 Sum square difference

Problem 6 Sum square difference

The sum of the squares of the first ten natural numbers is:

1 2 + 2 2 + 3 2 + ⋯ + 1 0 2 = 385 \large 1^2+2^2+3^2+\cdots+10^2=38512+22+32++102=385

The square of the sum of the first ten natural numbers is:

( 1 + 2 + 3 + ⋯ + 10 ) 2 = 5 5 2 = 3025 \large (1+2+3+\cdots+10)^2=55^2=3025(1+2+3++10)2=552=3025

Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is:

3025 − 385 = 2640 \large 3025 - 385 = 26403025385=2640

Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.

问题 6 和的平方与平方的和差值

前十个自然数的平方的和为:

1 2 + 2 2 + 3 2 + ⋯ + 1 0 2 = 385 \large 1^2+2^2+3^2+\cdots+10^2=38512+22+32++102=385

而前十个自然数和的平方为:

( 1 + 2 + 3 + ⋯ + 10 ) 2 = 5 5 2 = 3025 \large (1+2+3+\cdots+10)^2=55^2=3025(1+2+3++10)2=552=3025

因此,前十个自然数的平方和与和的平方之间的差是:

3025 − 385 = 2640 \large 3025 - 385 = 26403025385=2640

求前一百个自然数的平方和与和的平方之间的差

思路分析

自然数的平方的和通项公式

S ( 1 ) = n ( n + 1 ) ( 2 n + 1 ) 6 \large S(1)=\frac{n(n+1)(2n+1)}{6}S(1)=6n(n+1)(2n+1)

自然数和的平方通项公式

S ( 2 ) = ( n ( n + 1 ) 2 ) 2 \large S(2)=\left ( \frac{n(n+1)}{2} \right )^2S(2)=(2n(n+1))2

则和的平方与平方和差值通项公式为

S ( n ) = S ( 2 ) − S ( 1 ) = ( n ( n + 1 ) 2 ) 2 − n ( n + 1 ) ( 2 n + 1 ) 6 \large S(n)=S(2)-S(1)=\left ( \frac{n(n+1)}{2} \right )^2-\frac{n(n+1)(2n+1)}{6}S(n)=S(2)S(1)=(2n(n+1))26n(n+1)(2n+1)

= n ( n − 1 ) ( n + 1 ) ( 3 n + 2 ) 12 \large =\frac{n(n-1)(n+1)(3n+2)}{12}=12n(n1)(n+1)(3n+2)

代码实现

/*
 * @Author: coder-jason
 * @Date: 2022-04-12 10:48:07
 * @LastEditTime: 2022-04-12 11:16:45
 */
#include <iostream>
using namespace std;
int main()
{
    int n = 100;
    long long int ans = n * (n - 1) * (n + 1) * (3 * n + 2) / 12;
    cout << ans;
    return 0;
}

答案:25164150



相关文章
|
5月前
【P1035】级数求和
【P1035】级数求和
|
5月前
|
机器学习/深度学习 算法 Serverless
利用无穷级数逼近计算幂运算与开根号——Python实现
使用泰勒级数逼近法,本文介绍了如何用Python计算特殊幂运算,包括分数次幂和开根号。通过定义辅助函数,如`exp`、`getN_minus_n`、`multi`和`getnum`,实现了计算任意实数次幂的功能。实验结果显示,算法能有效计算不同情况下的幂运算,例如`0.09^2`、`1^2`、`0.25^2`、`0.09^(0.5)`、`1^(0.5)`和`0.25^(0.5)`。虽然精度可能有限,但可通过调整迭代次数平衡精度与计算速度。
|
6月前
|
Python
PTA-第4章-1 生成3的乘方表
```markdown 给定非负整数n,打印3从0到3^n的幂次方值。输入一行包含n,输出n+1行以&quot;pow(3,i) = &quot;格式显示结果。样例输入3,输出: pow(3,0) = 1 pow(3,1) = 3 pow(3,2) = 9 pow(3,3) = 27 ``` 代码实现如下(Python): ```python n = int(input()) for i in range(n + 1): print(f&quot;pow(3,{i}) = {3**i}&quot;) ```
78 1
卡诺图化简法的介绍
卡诺图化简法:从真值表到逻辑电路设计 一、引言(100字) 卡诺图化简法是一种常用的布尔代数化简方法,可以将复杂的逻辑电路简化为更简单的形式。本文将介绍卡诺图化简法的基本原理、应用技巧和实际案例,以帮助读者更好地理解和应用该方法。 二、卡诺图化简法的基本原理(200字) 卡诺图是一种二维表格,用于表示布尔代数中的逻辑函数。卡诺图的每个格子代表一个输入变量的取值组合,而格子内的数值则表示该输入变量组合下逻辑函数的输出值。通过卡诺图的排列和组合,可以找到逻辑函数的最简形式,并设计对应的逻辑电路。 卡诺图化简法的基本原理是利用逻辑函数的真值表,将相邻的1合并成更大的1组,从而找到最简的逻辑表达
344 0
wustojc3010快速求和
wustojc3010快速求和
58 0
一元函数微分学中导数--定义--意义--基本公式--运算法则
一元函数微分学中导数--定义--意义--基本公式--运算法则
|
Python
Python实现简单的求和运算
Python实现简单的求和运算
107 0
7-93 矩阵A乘以B
7-93 矩阵A乘以B
124 0
【矩阵分析】矩阵幂级数 发散 条件 || 幂级数 与 解析函数 的关系 || 幂级数 收敛半径r 的求法
【矩阵分析】矩阵幂级数 发散 条件 || 幂级数 与 解析函数 的关系 || 幂级数 收敛半径r 的求法
【矩阵分析】矩阵幂级数 发散 条件 || 幂级数 与 解析函数 的关系 || 幂级数 收敛半径r 的求法
使用格里高利公式求π的近似值,要求精确到最后一项的绝对值小于10–4
使用格里高利公式求π的近似值,要求精确到最后一项的绝对值小于10–4
使用格里高利公式求π的近似值,要求精确到最后一项的绝对值小于10–4