2013年1月4日 星期五

[ZJ] a059. 完全平方和


內容 :
給你一個範圍 a 到 b ,請你找出 a 與 b 之間所有完全平方數的和。

例如:範圍 [3, 25] 中所有完全平方數的和就是 4 + 9 + 16 + 25  = 54 。
輸入說明 :
輸入的第一列有一個整數 T (1≦T≦100),代表以下有多少組測試資料。

每組測試資料為兩列,包含兩個數 a 與 b (0≦a≦b≦1000)。
輸出說明 :
每組測試資料輸出一列,內容為 a 及 b 間所有完全平方數的和。
範例輸入 :
215535
範例輸出 :
Case 1: 5Case 2: 50
提示 :
出處 :
(管理:VacationClub)

可以用公式解,但是有點懶得打了,用暴力還比較好打點

/**********************************************************************************/
/*  Problem: a059 "完全平方和" from                                          */
/*  Language: C                                                                   */
/*  Result: AC (6ms, 256KB) on ZeroJudge                                          */
/*  Author: morris1028 at 2011-05-17 21:15:27                                     */
/**********************************************************************************/


#include<stdio.h>
#include<stdlib.h>
#include<math.h>
main() {
    int a, b, t, i, j;
    scanf("%d", &t);
    for(i = 1; i <= t; i++) {
        scanf("%d %d", &a, &b);
        int s = 0;
        for(j = ceil(sqrt(a)); j*j <= b; j++)
            s += j*j;
        printf("Case %d: %d\n", i, s);
    }
    return 0;
}

沒有留言:

張貼留言