= 平方和与立方和 = http://acm.hdu.edu.cn/showproblem.php?pid=2007 {{{#!cplusplus /*write by ASUN*/ #include"stdio.h" void main() { long int n,m; double sumj,sumy; while(scanf("%ld%ld",&m,&n)!=EOF) { sumj=sumy=0; if(m>n) //有可能n小于m,这点题目没有将清楚 { m=m+n; n=m-n; m=m-n; } for(;m<=n;m++) { if(m%2==1) sumj+=m*m*m*1.0; else sumy+=m*m*1.0; } printf("%.0lf %.0lf\n",sumy,sumj); } } }}} {{{#!cplusplus /*written by czk*/ #include int square_sum(int n) { return n*(n+1)*(2*n+1)/6; } int cube_sum(int n) { return n*(n+1)/2*n*(n+1)/2; } int sum(int n) { return n*(n+1)/2; } /* cube sum of 1, 3, 5,...,(2*n-1) */ int odd_cube_sum(int n) { return 8*cube_sum(n) - 12*square_sum(n) + 6*sum(n) - n; } int main() { int m, n; while(scanf("%d%d", &m, &n)!=EOF) { if(n < m) { int temp = m; m = n; n = temp; } printf("%d ", 4*(square_sum(n/2)-square_sum((m-1)/2))); printf("%d\n", odd_cube_sum((n+n%2)/2)- odd_cube_sum( (m-m%2)/2)); } } }}}