题解 | #尼科彻斯定理#
尼科彻斯定理
http://www.nowcoder.com/practice/dbace3a5b3c4480e86ee3277f3fe1e85
//m^3=a1+a2+...+am=m*(m^2).
//m^2是m个奇数的平均数
//若m^2是奇数,所求为:m^2-2*n,...,m^2-2,m^2,m^2+2,...,m^2+2*n . n=(m-1)/2,...,2,1,1,2,...,(m-1)/2
//若m^2是偶数,所求为:m^2-(2*n-1),m^2-3,m^2-1,m^2+1,m^2+3,...,m^2+(2*n-1). n=m/2,...,2,1,1,2,...,m/2
#include<stdio.h>
int main(){
int m,n;
scanf("%d",&m);
if((m*m)%2!=0){ //m^2是奇数
for(n=(m-1)/2;n>=1;n--)
printf("%d+",m*m-2*n);
printf("%d+",m*m);
for(n=1;n<(m-1)/2;n++)
printf("%d+",m*m+2*n);
printf("%d",m*m+2*(m-1)/2);
}
else{ //m^2是偶数
for(n=m/2;n>=1;n--)
printf("%d+",m*m-(2*n-1));
for(n=1;n<m/2;n++)
printf("%d+",m*m+(2*n-1));
printf("%d",m*m+(2*m/2-1));
}
}