문제 링크 : https://leetcode.com/problems/sqrtx/문제를 해결한 방법Math.sqrt(x)로 제출했다가 양심이 찔려서 다른 방법을 고안했습니다.값의 범위는 0~2^31-1까지이고, 소숫점은 제외한다고 했습니다.예를들어 sqrt(8) = 2로 출력해야 합니다. (2.xxxx...)그래서 Upperbound로 풀었습니다.long은 2^63-1이니, 2^31-1을 두번 곱해도 long 범위 내에 있으므로 오버플로우가 나지 않습니다.그래서 두 번 제곱했을 때 x보다 큰 첫 번째 값을 찾았습니다.그리고 최종적으로 답은 두 번 제곱했을 때 x보다 큰 첫 번째 값- 1 을 리턴하면 됩니다. (소숫점은 제거하므로)...
[LeetCode] Sqrt(x)에 대한 요약내용입니다.
자세한 내용은 아래에 원문링크를 확인해주시기 바랍니다.