백준 2417 정수 제곱근(with Python)

daeungdaeung·2021년 6월 30일
0

어떤 문제?

제목에 적힌 문제입니다.

이분탐색 유형입니다.

내가 생각한 Solution

문제에서 생각해볼 점

  • 이분 탐색은 항상 그래왔듯이 등호 한개 잘못쓰면 통과를 못합니다...

  • 디버깅 엄청하고 친구랑 토론도 했습니다.

  • 딱히 설명 드릴 부분은 없네요.

    • 코드의 출발이 비슷하고 디테일이 조금 다를텐데, 자신의 코드와 어떤 부분이 다른지(ex. 등호) 그림으로 그려가면서 이해해보시면 좋을 것 같습니다.

코드 구현

n = int(input())

l, r = 0, n

while True:
    mid = (l+r) // 2
    if r < l:
        break
    if mid**2 < n:
        l = mid + 1
    else:
        r = mid - 1

print(r+1)
profile
개발자가 되고싶읍니다...

0개의 댓글