https://www.acmicpc.net/problem/2417
n=int(input())
print(int(n**0.5)+1
if n**0.5%1!=0
else int(n**0.5))
n = int(input())
s, e = 0, int((2**63)**0.5)+1
res = 0
while s <= e:
m = (s+e)//2
if m**2 >= n:
res = m
e = m-1
else:
s = m+1
print(res)
https://www.acmicpc.net/problem/13702
N, K = map(int, input().split())
vol_li = [int(input()) for _ in range(N)]
s, e = 1, max(vol_li )
Max_ml = 0
while s <= e:
m = (s+e)//2
t = sum(n//m for n in vol_li)
if t >= K:
Max_ml = m
s = m+1
else:
e = m-1
print(Max_ml)
정수 제곱근 문제에 다양한 코드 알아갑니다!! 복습할때 참고하려고요! 역시나 어려웠던 이번주도 정말 수고 많으셨습니다~~