【发布时间】:2016-07-07 12:09:03
【问题描述】:
应该有一个程序,它将整数的每个数字平方,然后将这些临时数字连接成一个新的整数。 我已经编写了一个代码,它可以解决我的测试用例的问题,但是自动测试器会为一些随机生成的输入数字提供错误。
public class SquareDigit {
public int squareDigits(int n) {
int tmp = 0;
String returnvalue="";
while(n > 0) {
tmp = n % 10;
tmp = tmp * tmp;
returnvalue = returnvalue + Integer.toString(tmp);
n /= 10;
}
int result=Integer.parseInt(returnvalue);
return result;
}
}
【问题讨论】:
-
问题可能是由于整数精度,使用 long 或 BigInteger
-
@Sanjeev 猜这是因为 Integeroverflow。