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);
}
}
}
您的答案為: 224 正確答案為: 225
邏輯怪怪的喔,應該是 i * i 要落在 [a , b]
(a < b, 所以可能要 swap 喔)
所以應該是從 i = sqrt(a) 開始迭代吧,不是 i = a 吧?
注意浮點數轉整數喔。