import java.util.*; public class Solution { /** * 根据平方数的性质——连续n个奇数相加的结果一定是平方数。 * 如:9=1+3+5; * 16=1+3+5+7; * 所以,不断的进行奇数相加,并判断x大小即可 有几个奇数 结果就是几 但是当==0的时候 会多循环一次 所以结果要-1 */ public int mysqrt (int x) { //奇数的个数初始为0 int count = 0; //奇数初始为1 int startVal = 1; while(x>=0){ x = x-startVal; count++; startVal = startVal + 2; } return count-1; } }