#12770: WA求解(Java)


nkmu1051241229 (想像天然(Java))

學校 : 國立高雄海洋科技大學
編號 : 67539
來源 : [122.121.37.141]
最後登入時間 :
2023-07-23 14:16:13
d186. 11461 - Square Numbers -- UVa11461 | From: [1.174.241.102] | 發表日期 : 2017-09-30 02:03

import java.util.Scanner;
public class d186 {
    public static void main(String[] args){
        Scanner kin = new Scanner(System.in);
        while(kin.hasNext()){
            int a = kin.nextInt();
            int b = kin.nextInt();
            int t=0;
            if(a+b>0){
                for(int i=a;i*i<=b;i++){
                    if(i*i<=b)  t++;
                }
            }
            System.out.println(t);
        }
    }
}



#0: 100% WA (line:5)

您的答案為: 224
正確答案為: 225
 
#12776: Re:WA求解(Java)


Benson86 (nobodyzxc)

學校 : 國立彰化高級中學
編號 : 53437
來源 : [140.113.128.187]
最後登入時間 :
2020-02-25 00:10:53
d186. 11461 - Square Numbers -- UVa11461 | From: [1.163.183.70] | 發表日期 : 2017-10-01 20:44

邏輯怪怪的喔,應該是 i * i 要落在 [a , b]

(a < b, 所以可能要 swap 喔)

所以應該是從 i = sqrt(a) 開始迭代吧,不是 i = a 吧?

注意浮點數轉整數喔。

 
 
ZeroJudge Forum