본문 바로가기

반응형

이진탐색

(7)
[백준] 콘서트(python) 백준, 콘서트 16466번: 콘서트 HCPC (Hanyang Completely Perfect Celebrity)는 한양대학교 최고의 가수에게 주어지는 칭호이다. 한양대학교는 매년 최고의 HCPC를 선발한다. HCPC가 되기란 여간 어려운 게 아니다. 매일 아침 날달걀을 까먹 www.acmicpc.net TL;DR 이진 탐색(Binary search) 문제 요약 1. 1차 티켓팅에서 팔린 티켓의 정보가 주어진다. 2. 2차 티켓팅 때 1차 티켓팅에서 팔리지 않은 티켓 중 살 수 있는 가장 작은 번호의 티켓을 출력한다. - 1차 티켓에 팔린 티켓 정보를 활용하여 2차 때 구할 수 있는 티켓 번호 중 가장 작은 번호를 찾아 추력하면 된다. - 티켓의 수와 번호의 수가 매우 크기 때문에 완전 탐색으로 풀 경우..
[리트코드] Search a 2D Matrix 2(python) 리트코드, Search a 2D Matrix 2_이차원 리스트 탐색하기 2 Search a 2D Matrix II - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com TL;DR 이진 탐색(Binary search) 문제 요약 1. m * n 크기의 2차원 정수 리트스 matrix에서 target을 찾는 효율적인 알고리즘을 작성하라. 2. 각 행(row)에서 숫자는 좌에서 우로 오름차순 정렬되어 있다. 3. 각 열(column)에서 숫자는 위에서 아래로 오름차순 정..
[리트코드] Two Sum 2 - Input array is sorted(python) 리트코드, Two Sum 2 - Input array is sorted_두 수의 합 2 - 정렬된 입력 리스트 Two Sum II - Input array is sorted - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com TL;DR 이진 탐색(Binary search) 문제 요약 1. 1차원의 내림차순이 아닌 정렬된 정수 리스트 numbers에서 두 원소의 합이 target이 되는 index를 반환한다. 2. 합이 target이 되는 수는 동일한 index가 ..
[리트코드] Intersection of Two Arrays(python) 리트코드, Intersection of Two Arrays_투 리스트의 교집합 Intersection of Two Arrays - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com TL;DR 이진 탐색(Binary search) 문제 요약 1. 두 정수 리스트 nums1과 nums2가 주어질 때, 두 리스트의 교집합을 반환하는 함수를 작성하라. 2. 교집합에 포함되는 원소들은 유일해야 하며, 순서는 상관없다. - 주어진 두 리스트에 공통 원소를 반환하는 함수를 작성..
[리트코드] Search in Rotated Sorted Array(python) 리트코드, Search in Rotated Sorted Array_회전 정렬 배열 탐색 Search in Rotated Sorted Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com TL;DR 이진 탐색(Binary search) 문제 요약 1. 서로 다른 값을 가진 오름차순으로 정렬된 리스트 nums가 주어진다. 2. 이 리스트는 특정 pivot 인덱스에 의해 회전된 형태로 존재할 수 있다. 2-1. 예를 들어 [0, 1, 2, 4, 5, 6, 7]..
[백준] 랜선 자르기 백준, 랜선 자르기 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net TL;DR 이진 탐색(Binary Search) Parametic search 문제 요약 1. 랜선의 길이가 주어지고 해당 랜선을 잘라 만들어야 하는 랜선의 개수가 주어진다. 2. 만들어야 하는 랜선의 개수를 만족할 수 있는 경우 중 가장 긴 랜선의 길이를 반환하는 프로그램을 작성해야 한다. 3. 주어진 랜선의 개수를 초과해서 만들 수 있다. - 주어진 랜선의 길이를 잘라 만든 랜선의 개수가 주어진 랜선의 개수 이..
[리트코드] Binary Search(python) LeetCode, Binary Search(이진 탐색/검색) TL;DR 이진 탐색(Binary Search) 문제 요약 1. 오름차순으로 정렬된 유일한 원소를 갖고 있는 정수 배열 nums와 정수 target이 주어진다. 2. 주어진 nums와 target에 대해서 target이 nums에 존재하는지 찾는 함수를 작성하라. 3. 만약 target이 존재한다면 해당 인덱스를 반환하고, 존재하지 않는 경우에는 -1을 반환한다. 4. 시간 복잡도는 반드시 O(logn)이 되어야 한다. - 오름차순으로 정렬된 배열과 찾아야 하는 정수, O(logn)의 시간복잡도를 통해 Binary search를 통해 문제를 해결해야 함을 알 수 있다. (정렬된 배열, O(logn)의 시간복잡도는 Binary search의 대표..