-
278. First Bad Version릿코드(LEETCODE) 2020. 5. 2. 16:58반응형
https://leetcode.com/problems/first-bad-version/
당신은 제품 관리자이며 현재 새 제품 개발 팀을 이끌고 있다.
불행히도 당신의 최근 제품은 품질 검사를 통과하지 못했다.
각 버전은 이전 버전 기반으로 개발되었음으로 불량 버전 이후의 모든 보전도 불량이다.
// TODO
이문제는 첫 번째 불량이 발생하는 새제품을 찾는 문제인대 문제의 조건을 봐서는 어디 부터 접근해야 하는지 알 수가 없었다. Topic 에서 binary-search 나와서 접근해서 풀긴 했지만 문제 정의가 조금 아쉬운 문제다.
// The API isBadVersion is defined for you. // bool isBadVersion(int version); class Solution { public: // 이문제는 첫번째 불량버전을 찾는 문제인대 // 여기서 binaray search 로 접근하는 접근법이 애매하다. // 무슨 기준인지 모르겠다 문제의 의도를 알수 없다. int firstBadVersion(int n) { int left = 1; int right = n; while (left < right) { int mid = left + (right - left) / 2; if (isBadVersion(mid)) { right = mid; } else { left = mid + 1; } } return left; } };
반응형'릿코드(LEETCODE)' 카테고리의 다른 글
485. Max Consecutive Ones (0) 2020.05.02 jewels and stone (0) 2020.05.02 283. Move Zeroes (0) 2020.04.09 53. Maximum Subarray (0) 2020.04.09 202. Happy Number (0) 2020.04.09