a059
輸入說明 :
輸入的第一列有一個整數 T (1≦T≦100),代表以下有多少組測試資料。 每組測試資料為兩列,包含兩個數 a 與 b (0≦a≦b≦1000)。
輸出說明 :
每組測試資料輸出一列,內容為 a 及 b 間所有完全平方數的和。
題目說b的範圍不超過1000,所以找1~31的完全平方數即可,每次判斷有沒有超過b的範圍(加快速 度)
#include<stdio.h>
#include<math.h>
int main(){
int T;
int i,j;
int a,b;
int temp;
int sum;
scanf("%d",&T);
for(i=0;i<T;i++)
{
sum=0;
scanf("%d %d",&a,&b);
for(j=1;j<31;j++)
{
temp=pow((double)j,2);
if(b<temp)
break;
if(a<=temp&&temp<=b)
sum+=temp;
}
printf("Case %d: %d\n",i+1,sum);
}
return 0;
}