HDOJ 2007 平方和与立方和
Problem Description
给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。
Input
输入数据包含多组测试实例,每组测试实例包含一行,由两个整数m和n组成。
Output
对于每组输入数据,输出一行,应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和。
你可以认为32位整数足以保存结果。
Sample Input
1 3
2 5
Sample Output
4 28
20 152
这个题有个小坑,测试数据里有些数据是第一次输入的数字比第二次输入的数据要大,这个会影响循环的进行,所以得加一个额外的判断处理那种情况。
#include<stdio.h>
int main(void)
{
int a, b, sum2, sum3;
while (scanf("%d %d", &a, &b) != EOF)
{
sum2 = sum3 = 0;//不要忘了这个初始化
if (a > b)//处理第一次输入数比第二次大的情况
{
int temp = a;
a = b;
b = temp;
}
int i;
for (i = a; i <= b; i++)
{
if (i % 2 == 1)
sum3 += i * i * i;
else
sum2 += i * i;
}
printf("%d %d\n", sum2, sum3);
}
return 0;
}