코드 a = int(input()) def binary_search(target, start, end): result = 0 while start mid ** 2: start = mid + 1 else: end = mid - 1 return result print(binary_search(a, 0, a)) 전형적인 이분탐색 문제. 그런데 파이썬에는 큰 수 제한이 없으니 그냥 a**(0.5)를 하면 풀리지 않을까 생각해서 제출해봤는데 overflow 에러가 발생했다. OverflowError: int too large to convert to float Python의 float은 IEEE 754을 사용하고 있고, 위 코드의 결과는 float의 범위를 벗어나는 값이기 때문이라고 한다. 자세한 것은 https..