题意:

求首项为2,公差为3的等差数列前n项和

解法一(数学公式)

由等差数列前n项和公式:即可求解
对应到本题,答案即为:
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
    ios::sync_with_stdio(false);
    int n;
    while(cin>>n){
        cout<<n*2+n*(n-1)/2*3<<endl;
    }
    return 0;
}
时间复杂度:,显然,只需要的时间计算答案。
空间复杂度:,程序中没有开额外的数组,也没有递归调用,故空间复杂度为

解法二(循环计算)

我们使用循环来生成这个数列,然后计算总和即可。
代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
    ios::sync_with_stdio(false);
    int n;
    while(cin>>n){
        int ans=0;//答案
        int x=2;//当前数字
        while(n--){
            ans+=x;
            x+=3;//每次+3
        }
        cout<<ans<<endl;
    }
    return 0;
}
时间复杂度:,我们需要枚举数列每个数字,故时间复杂度为
空间复杂度:,程序中没有开额外的数组,也没有递归调用,故空间复杂度为