77 条题解

  • 138
    @ 2022-5-20 21:05:56

    基础的求和,简单的循环,也可以直接用公式,上代码!

        #include <iostream>//万能头也行
        using namespace std;
        int main()
        {
            int a;
            int sum=0;
            cin >> a;
            for(int i=1;i<=a;i++)
            {
                sum += i*i;//i的平方
            }
            cout << sum ;//输出
            return 0;
        }
    
    

    日常第十三题,嗨害嗨~~~

    • @ 2022-8-19 17:18:43

      感谢👍 赞给了

    • @ 2023-7-19 16:22:32

      谢了,36个赞

    • @ 2023-7-21 14:45:12

      不想自己写看一下·-·

    • @ 2023-8-10 11:41:36

      同上

    • @ 2023-8-12 16:25:37
      {"messages":{},"UiContext":{"cdn_prefix":"/","url_prefix":"/","ws_prefix":"/","nav_logo_dark":"http://oj.hetao101.com/d/cpp_teacher/file/106/55.png","constantVersion":"e6b2fad1","domainId":"training","domain":{"_id":"training","lower":"training","owner":2,"name":"练习题库","bulletin":"# 核OJ_核桃编程 - 练习题库\r\n\r\n[⇐ 返回根题库](http://oj.hetao101.com/)\r\n\r\n## 基本使用方法\r\n\r\nP 系列题目来自网络,可能会有题目排版数据问题,部分纯输出的题目可能缺少数据,管理员看到缺少数据系统错误的提交后会及时修复。遇到问题可以在讨论区发布帖子。\r\n\r\n1. 通过题库点击某道想做的题目\r\n2. 读题\r\n3. 点击进入在线编程模式\r\n4. 点击右上方的自测打开自测窗口\r\n5. 将题目的样例输入复制进输入框中\r\n6. 点击运行自测,查看是否与输出一致\r\n7. 如果结果没有问题,可以点击递交评测查看评测结果\r\n8. 如果显示错误、可以对应地修改代码再次自测\r\n\r\n![](http://oj.hetao101.com/file/2/t.png)\r\n\r\n## 常见设置\r\n\r\n0. 设置当前题库的显示名:<http://oj.hetao101.com/d/training/home/settings/domain>\r\n1. 进入当前题库的偏好设置页面:<http://oj.hetao101.com/d/training/home/settings/preference>\r\n2. 将显示偏好中的**用户界面语言**设置成**简体中文**\r\n3. 将使用偏好中的**代码语言**设置成自己常用的语言\r\n4. 将使用偏好中的**默认代码模板**改成自己习惯的代码框架,比如下面这段\r\n\r\n```cpp\r\n#include<bits/stdc++.h>\r\nusing namespace std;\r\nint main(){\r\n\r\n\r\n\r\n    return 0;\r\n}\r\n```\r\n","roles":{"3":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376","teacher":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652777725396788478736373","guest":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624967874125500547201","default":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652777525100954235143873","root":"-1","cpp":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652789254612192640104439","contest_creator":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652777526956929862828997","new_teacher":"10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652777543124148872280005"},"avatar":"url:https://ecmb.bdimg.com/tam-ogel/1969563307_-1467192127_88_88.jpg","langs":"cc.std98,cc.std11,cc.std14,py.py3,cc,py","share":"*"},"SWConfig":{"preload":"","hosts":["http://oj.hetao101.com","https://oj.hetao101.com","oj.hetao101.com/","/"],"domains":[]}},"UserContext":"{\"_id\":17475,\"mail\":\"5976915@hetao101.com\",\"uname\":\"hetao5976915\",\"hashType\":\"hydro\",\"priv\":16842756,\"regat\":\"2023-07-12T06:13:59.355Z\",\"loginat\":\"2023-08-01T11:27:44.933Z\",\"perm\":\"BigInt::10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652777525100954235143873\",\"scope\":\"BigInt::-1\",\"role\":\"default\",\"domains\":[],\"tfa\":false,\"authn\":false,\"group\":[\"17475\"],\"timeZone\":\"Asia/Shanghai\",\"codeLang\":\"cc\",\"avatar\":\"gravatar:5976915@hetao101.com\",\"gender\":2,\"backgroundImage\":\"/components/profile/backgrounds/1.jpg\",\"unreadMsg\":0,\"pinnedDomains\":[],\"fontFamily\":\"Open Sans\",\"codeFontFamily\":\"Source Code Pro\",\"preferredEditorType\":\"sv\",\"monacoTheme\":\"vs-light\",\"theme\":\"light\",\"formatCode\":true,\"nAccept\":9,\"nSubmit\":23,\"rp\":5,\"rpInfo\":{\"problem\":5},\"rank\":5740,\"level\":1,\"avatarUrl\":\"//cn.gravatar.com/avatar/dc51bdcf0c080f7680e4d1069ddde2a2?d=mm&s=128\"}"}
      
      
    • @ 2023-8-12 16:26:23

      猜猜这是什么

    • @ 2023-8-14 18:07:06

      @ 一样

    • @ 2023-8-28 6:43:05

      怎么在代码前打字啊?

    • @ 2023-11-18 15:04:51

      那个int a;和int sum=0;可以写作int a,sum=0;

  • 16
    @ 2022-8-3 21:11:47

    首先万能开头头文件!然后开始for语句的阶乘!

    #include <bits/stdc++.h>
    using namespace std;
    int main()
    {
        int a, sum = 0;
        cin >> a;
        for (int i=1;i<=a;i++)
            sum += i * i;
        cout << sum;
        return 0;
    }
    
  • 15
    @ 2022-4-28 20:17:11

    基础的求和

    for(int i=1;i<=n;i++)
    {
        sum+=i*i;
    }
    

    • 12
      @ 2023-8-16 18:13:41

      不会吧,这么简单 应该都会吧......(先后看!养成习惯!)

      #include <bits/stdc++.h>
      using namespace std;
      int main()
      {
          int a,sum=0;
          //定义a,sum(注意!sum一定要=0)
          cin>>a;//输入a
          for(int i=1;i<=a;i++)
          {
              sum+=i*i;//累乘i
          }
          cout<<sum;//输出sum
          return 0;
      }
      

      制作不易,给个赞吧,球球了...... 有什么问题,联系我,邮箱是ASheepBoy_Bed@163.com

      • 6
        @ 2023-7-30 20:52:57

        使用平方和累加公式

        n*(n+1)*(2*n+1)/6

        #include <iostream>
        using namespace std;
        int main()
        {
            int n;
            cin>>n;
            cout<<n*(n+1)*(2*n+1)/6;
            return 0;
        }
        
        • 1
          @ 2023-12-19 20:46:11
          #include<iostream>
          using namespace std;
          int main()
          {
              int a[1000],n,sum=0;
              cin>>n;
              for(int i=0;i<n;i++)
              {
                  a[i]=(i+1)*(i+1);
                  sum+=a[i];
              }
              cout<<sum;
              return 0;
          }
          
          • 0
            @ 2024-5-12 12:56:47
            #include <bits/stdc++.h>//万能头或iostream
            using namespace std;
            int main()
            {
                int n,sum;
                cin>>n;
                int a[n];
                for (int i=1; i<=n; i++)
                {
                    a[i]=i*i;
            # 
                    sum+=a[i];
                }
                cout<<sum;
                return 0;
            }//注:有点复杂萌新慎用
            
            • 0
              @ 2024-5-8 20:50:27
              #include <bits/stdc++.h>
              using namespace std;
              int main()
              {
                  int n,sum=0;
                  cin >> n;
                  for (int i=1;i<=n;i++)
                  {
                      sum+=i*i;
                  }
                  cout << sum;
                  return 0;
              }
              
              • 0
                @ 2024-4-25 21:00:06

                👍 #include <iostream> using namespace std; int main() { int a; int sum=0; cin >> a; for(int i=1;i<=a;i++) { sum += i*i; } cout << sum ;

                return 0; }

                • 0
                  @ 2024-4-25 20:59:30

                  #include <iostream> using namespace std; int main() { int a; int sum=0; cin >> a; for(int i=1;i<=a;i++) { sum += i*i; } cout << sum ; return 0; }

                  • 0
                    @ 2024-1-18 11:08:41

                    没啥好说的,上代码!!!

                    #include <iostream>//正常开头
                    using namespace std;
                    int main()
                    {
                        int n;//定义数列的项数n
                        int sum=0;//定义求和变量
                        cin >> n;//输入数列的项数n
                        for(int i=1;i<=n;i++)
                        {
                            sum += i*i;//i的平方
                        }
                        cout << sum ;//输出
                        return 0;
                    }//一手交赞,一手交货(代码).否则,me半夜去你家把网线偷了👀️
                    
                    • 0
                      @ 2023-12-30 16:45:18

                      快乐

                      #include <iostream>
                      using namespace std;
                      int main()
                      {
                          int n,sum = 0;
                          cin >> n;
                          for (int i = 1;i <= n;i++)
                          {
                              sum += i * i;
                          }
                          cout << sum;
                          return 0;
                      }
                      
                      • 0
                        @ 2023-12-21 20:20:35
                        #include <bits/stdc++.h>
                        using namespace std;
                        int main()
                        {
                            int a,sum=0;
                            cin>>a;
                            for(int i=0;i<=a;i++)
                            {
                                sum+=i*i;
                            }
                            cout<<sum;
                        }
                        
                        
                        太简单了吧!!(来自脑残人士的欢呼```
                        
                        • 0
                          @ 2023-11-25 14:59:19
                          #include <iostream>
                          using namespace std;
                          int main()
                          {                              // 第i项ai的值为i2
                                                         // 就是说它是不是废话 @1, 4, 9, 16, 25, ...
                              int n, sum = 0;
                              cin >> n;
                              for (int i = 1;i <= n;i++)
                              {
                                  sum += i * i;
                              }
                              cout << sum;
                              return 0;
                          }
                          
                          • 0
                            @ 2023-11-17 19:13:23

                            #include<iostream> using namespace std; int main(){ int n,a=0; cin>>n; for(int i=1;i<=n;i++){ a+=i*i; } cout<<a; return 0; }

                            • 0
                              @ 2023-11-12 10:33:14
                              #include <iostream>
                              using namespace std;
                              int main() {
                                      int a;
                                      int sum=0;
                                      cin >> a;
                                      for(int i=1;i<=a;i++)
                                      {
                                          sum += i*i;//i的平方
                                      }
                                      cout << sum ;//输出
                                     return 0;
                                }
                              
                              • 0
                                @ 2023-8-30 9:06:47
                                #include <iostream>
                                using namespace std;
                                int main()
                                {
                                    int q,a=0;
                                    cin>>q;
                                    for (int i=1;i<=q;i++)
                                    {
                                        a+=i*i;
                                    }
                                    cout<<a;
                                    return 0;
                                }
                                
                                • 0
                                  @ 2023-8-11 10:23:48

                                  for 循环求和

                                  我们先看题目。

                                  小明写出了一个数列,第 i 项 ai 的值为 i2。数列从第一项(i = 1)开始如下:
                                  1, 4, 9, 16, 25, ...
                                  编程求出这个数列前 n 项的和。
                                  
                                  • 上面要求找出规律,并求前n项的和。
                                  • 我们很容易就能找到它的规律:第一项是1 *1 第二项是 2 *2,第三项是3 *3,因此得到规律:第i项是i *i。

                                  O(n)解法

                                  这是大部分人所用的解法,

                                  • 我们知道for循环有两个关键,
                                    1. 循环多少次?
                                    2. 每次循环干什么?
                                  • 这两个问题我们都能解决,因为是遍历前n项所以,循环n次。
                                  • 根据规律,每次循环,sum需要加上i *i。

                                  之后用代码实现这个for循环求和即可。

                                  O(n)代码

                                  #include <bits/stdc++.h>
                                  using namespace std;
                                  int main()
                                  {
                                      int n,sum=0;//sum初始化为0
                                      cin>>n;
                                      for (int i=1;i<=n;i++)
                                      {//重复执行n次
                                          sum+=i*i;//sum+第i个数的值。
                                      }
                                      cout<<sum;//输出总和。
                                      return 0;
                                  }
                                  

                                  O(1)代码

                                  虽然O(n)代码解决这题已经绰绰有余,但是,我们永远要有一颗追求高效代码的心。

                                  • 你是到吗?其实,这种求和是有一种求和公式的,如:求1—n项的所有数和就可以这样算
                                  • n*(n+1)*(2 *n+1)/6
                                  • 这是按证明写的算式。我们今天的首要任务就是,理解这个算式。

                                  具体方法可以看这个视频 https://www.bilibili.com/video/BV15P4y1k7cn/?spm_id_from=333.337.search-card.all.click&vd_source=c80c64ae6a44d5ec4bdc4a74b5023142


                                  相信你看了这个视频后已经明白了原理。之后写进代码即可。

                                  O(1)AC代码

                                  #include <bits/stdc++.h>
                                  using namespace std;
                                  int main()
                                  {
                                      int n;
                                      cin>>n;
                                      cout<<n*(n+1)*(2*n+1)/6;
                                      return 0;
                                  }
                                  
                                  • 0
                                    @ 2023-8-9 15:22:42

                                    观察数列可知,数列排列顺序为依次累加i的平方 以下是AC过的代码,准确无误,有错你找我😄

                                    #include <iostream>
                                    using namespace std;
                                    int main()
                                    {
                                        int n,sum=0;
                                        cin >>n;
                                        for(int i=1;i<=n;i++)
                                        {
                                            sum+=i*i;
                                        }
                                        cout <<sum<<endl;
                                        return 0;
                                    }
                                    
                                    
                                    • 0
                                      @ 2023-8-7 20:05:30

                                      image

                                      信息

                                      ID
                                      550
                                      时间
                                      1000ms
                                      内存
                                      128MiB
                                      难度
                                      3
                                      标签
                                      递交数
                                      7840
                                      已通过
                                      4135
                                      上传者