classSolution(object):defisPerfectSquare(self,num):""" :type num: int :rtype: bool """ifnum<=1:returnTruer=num/2+1l=2whilel<=r:mid=(l+r)/2target=num/mid# num = 5ifnum%mid!=0andtarget==mid:returnFalseiftarget==mid:returnTrueiftarget<mid:r=mid-1else:l=mid+1returnFalse