题解 1127: C语言训练-尼科彻斯定理

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

。。好像还可以。。:C语言训练-尼科彻斯定理 (C语言代码)

解题思路:先观察给出的样例,若为奇数,则中间的数为m^2,若为偶数,则中间两个数为m^2-1,m^2+1。然后中间数两边对称的数相加等于2*m^2,所以定理成立。再观察,无论输入的是奇数还是偶数,输出的第一个数都是m^2-m+1,所以再从第一个数开始,每个数+2,加m-1次,再输出就行了。

C语言训练-尼科彻斯定理-题解(C++代码)

#思路将n^3拆分成n个连续奇数之和。记为数列A0,A1,...,An-2,An-1。是一个等差数列,公差d=2。根据公式Sn=nA0+n(n-1)d/2,算出A0即可。#代码```cpp#includeintmain(){intm;std::cin>>m;std::cout