zoukankan      html  css  js  c++  java
  • 欧拉计划第6题题解

    Sum square difference

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

    [1^2 + 2^2 + cdots + 10^2 = 385 ]

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

    [(1 + 2 + cdots + 10)^2 = 55^2 = 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.

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

    平方的和与和的平方之差

    前十个自然数的平方的和是

    [1^2 + 2^2 + cdots + 10^2 = 385 ]

    前十个自然数的和的平方是

    [(1 + 2 + cdots + 10)^2 = 55^2 = 3025 ]

    因此前十个自然数的平方的和与和的平方之差是 3025 − 385 = 2640。

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

    解题思路

    (n) 个数的和为 (frac{n cdot (n+1)}{2}),所以前 (n) 个数的和的平方为

    [frac{n^2 cdot (n+1)^2}{4} ]

    (n) 个数的平方和公式为

    [frac{n cdot (n+1) cdot (2n+1)}{6} ]

    所以本题的答案为

    [frac{n^2 cdot (n+1)^2}{4} - frac{n cdot (n+1) cdot (2n+1)}{6} ]

    实现代码如下:

    #include <bits/stdc++.h>
    using namespace std;
    long long f(long long n) {
        return n*n*(n+1)*(n+1)/4 - n*(n+1)*(2*n+1)/6;
    }
    int main() {
        cout << f(100) << endl;
        return 0;
    }
    

    答案为 (25164150)

  • 相关阅读:
    如何根据二叉树 前序遍历 中序遍历 后序遍历 中的两种遍历来反推另一种遍历
    dijkstral改编
    纪念做出来的第一道计算几何题
    链式前向星
    一道简单树形dp
    算法进阶指南—特殊排序
    算法进阶指南二分章节的两道题
    秦皇岛winter camp 总结
    C
    一道cf水题
  • 原文地址:https://www.cnblogs.com/quanjun/p/12322840.html
Copyright © 2011-2022 走看看