先看

输入 输出
1 1
2
3 4
4
5 9
6

跟据上表可得:每次输出都应为完全平方数,我们仔细观察每个完全平方数,它恰恰等于n/22\lfloor n / 2 \rfloor^2因此可以得出以下公式ni=1i+2=\sum^{i=1 \: i+2}_n = n/22\lfloor n / 2 \rfloor^2

因此可以写出以下代码

pow((n + 1) / 2, 2)

完整代码

#define int64(n) ((long long)(n))
long long n;
cin >> n;
cout << int64(pow(((n + 1) / 2), 2)) << endl;

完整代码

//Code written by Li Zexuan (Looks handsome)
#include <bits/stdc++.h>
using namespace std;
#define int64(n) ((long long)(n))

int main() {
	long long n;
	cin >> n;
	cout << int64(pow(((n + 1) / 2), 2)) << endl;
	return 0;
}

image

正好洛谷开着就直接用洛谷了