您的位置:首页 > 其它

平方和与立方和(2007)

2014-03-13 14:12 113 查看

平方和与立方和

Time
Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K
(Java/Others)

Total Submission(s): 39213 Accepted Submission(s):
11522


[align=left]Problem Description[/align]

给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。

[align=left]Input[/align]

输入数据包含多组测试实例,每组测试实例包含一行,由两个整数m和n组成。

[align=left]Output[/align]

对于每组输入数据,输出一行,应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和。

你可以认为32位整数足以保存结果。

[align=left]Sample Input[/align]

1 3 2
5

[align=left]Sample Output[/align]

4 28 20
152

C代码

#include <stdio.h>

#include <stdlib.h>

int main()

{

    long
m,n,i,k;

   
while(~scanf("%ld
%ld",&m,&n)){

       if(m>n){

           
k=n;

           
n=m;

           
m=k;

       
}
       
long s1=0,s2=0;

       
if(m%2==0){

           
for(i=m;i<=n;i+=2){

              
s1+=i*i;

              
s2+=(i+1)*(i+1)*(i+1);

           
}

              
if(n%2==0)

              
s2-=(n+1)*(n+1)*(n+1);

       
}

       
else{

           
for(i=m;i<=n;i+=2){

              
s1+=(i+1)*(i+1);

              
s2+=i*i*i;

           
}

           
if(n%2!=0)

           
s1-=(n+1)*(n+1);

       
}

       
printf("%ld %ld\n",s1,s2);

    }

    return
0;

}
总结

这题主要注意输入数据时是无序输入的,不要认为先输入小的后输入大的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: