其实这道题实质上我们要输出的东西就是一个等差数列,等差数列的元素个数为我们输入的数字 N 个,同时我们还知道这N个数字之和为N的立方,那么我们根据等差数列的性质可以轻易的得出每一项的值(用N来表示),对已等差数列我们只要知道,首项(N*N-N+1,自己推算一下即可),公差2,项数N,那么一切就简单的很了!!!
#include<iostream>
using namespace std;
int main()
{
int num;
cin >> num;
//非法判断
if (num <= 0 || num>100)
{
return 0;
}
for (int i = num*num + 1 - num, count = 0; count <num; i += 2, count++)
{
cout << i;
if (count != num - 1)
{
cout << "+";
}
else
{
cout << endl;
}
}
return 0;
}