제곱근을 구하는 것인데 이분탐색으로 구하여야만 통과할 수 있는 문제다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 n = int(input()) lt = 1 rt = n mid = n//2 while 1: if mid**2 == n: print(mid) break elif mid**2 > n: rt = mid-1 mid = (lt+rt)//2 else: lt = mid+1 mid = (lt+rt)//2 cs https://www.acmicpc.net/problem/13706