华为机试 等差数列(简单)

等差数列

http://www.nowcoder.com/questionTerminal/f792cb014ed0474fb8f53389e7d9c07f

题目描述

功能:等差数列 2,5,8,11,14。。。。
输入:正整数N >0
输出:求等差数列前N项和
本题为多组输入,请使用while(cin>>)等形式读取数据

方法1:

暴力逐加

#include<iostream>
using namespace std;
int main(){
    int n;
    while(cin>>n){
        int ans=0;//ans存储求和结果
        for(int i=0,num=2;i<n;i++,num+=3)//num存储当前数,从2开始,每次加3
            ans+=num;
        cout<<ans<<endl;
    }
    return 0;
}

方法2:

套用等差数列求和公式:
图片说明

    while(cin>>n){
        cout<<n*2+3*(n-1)*n/2<<endl;
    }
全部评论

相关推荐

2025-12-17 15:08
赤峰学院 Java
乐邦詹雨:学历厂,另外东子不同部门待遇进的难度天差地别,我同学零售一面1h30min有八股算法项目拷打,我就两轮技术面各30min就一面问了些技术问题,二面问了两个开放式技术问题,三面线下hr面就结束了
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
01-08 16:50
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务