我正在从 HackerRank.com 解决一些练习,代码在 Netbeans 甚至在测试用例的页面编译器中都能完美运行,但是当我提交代码时,它在每个测试中都会抛出这个错误(除了最后一个):
ArithmeticException:在 Solution.main 抛出(Solution.java:15)
这是代码:
Scanner s = new Scanner(System.in);
int a = s.nextInt(),j=1;
for(int i=0; i<a; i++){
int b = s.nextInt(), c =s.nextInt();
for(j = b*c; j>0;j--) {
if((b*c)%(j*j)==0){
System.out.println(b*c/(j*j));
break;}
}
}
第 15 行是:
if((b*c)%(j*j)==0){
声明有什么问题?我在 for 循环中将 'j' 设置为与 0 不同,所以没有理由除以零,这是我自己能找到的唯一解释。
先感谢您。