leetcode
-
Problem : https://leetcode.com/problems/maximum-sum-of-distinct-subarrays-with-length-k/description/ Difficulty : Medium Status : Solved Time : 00:00:00 풀이 간단하긴 한데, 어떻게 더 최적화할지를 생각해보게 되는 문제. 기본적으로는 딕셔너리를 사용하여 distinct한 숫자를 관리하면 된다. k개의 fix된 길이니 슬라이딩 윈도우를 수행하며 조건에 맞을 때마다 정답을 갱신하면 되겠다. 워낙 많이 보이는 타입의 문제다 보니, 최적화가 역시 관건이 될 것 같다. 풀이코드class Solution: def maximumSubarraySum(self, nums: List[int], k: in..
2461. Maximum Sum of Distinct Subarrays With Length KProblem : https://leetcode.com/problems/maximum-sum-of-distinct-subarrays-with-length-k/description/ Difficulty : Medium Status : Solved Time : 00:00:00 풀이 간단하긴 한데, 어떻게 더 최적화할지를 생각해보게 되는 문제. 기본적으로는 딕셔너리를 사용하여 distinct한 숫자를 관리하면 된다. k개의 fix된 길이니 슬라이딩 윈도우를 수행하며 조건에 맞을 때마다 정답을 갱신하면 되겠다. 워낙 많이 보이는 타입의 문제다 보니, 최적화가 역시 관건이 될 것 같다. 풀이코드class Solution: def maximumSubarraySum(self, nums: List[int], k: in..
2024.11.19 -
Problem : https://leetcode.com/problems/defuse-the-bomb Difficulty : Easy Status : Solved Time : 00:06:22 문제 설명 풀이 슬라이딩 윈도우 문제. k가 주어진 세 가지 경우일 때를 각각 구현하면 쉽게 풀린다. 시간복잡도는 O(N). 풀이 코드class Solution: def decrypt(self, code: List[int], k: int) -> List[int]: n = len(code) result = [0]*n if k == 0 : return result if k > 0 : result[0] = sum..
1652. Defuse the BombProblem : https://leetcode.com/problems/defuse-the-bomb Difficulty : Easy Status : Solved Time : 00:06:22 문제 설명 풀이 슬라이딩 윈도우 문제. k가 주어진 세 가지 경우일 때를 각각 구현하면 쉽게 풀린다. 시간복잡도는 O(N). 풀이 코드class Solution: def decrypt(self, code: List[int], k: int) -> List[int]: n = len(code) result = [0]*n if k == 0 : return result if k > 0 : result[0] = sum..
2024.11.18 -
Problem : https://leetcode.com/problems/find-the-power-of-k-size-subarrays-i Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 어떻게 문제를 분류해 볼 수 있을까.. 싶은 문제. 연속 숫자로 sort된 길이를 임시로 저장해가며, 그 길이가 k 이상이면 그 인덱스의 숫자를 (maximum 값이 현재 index임이 충족된다), 그렇지 않다면 -1을 담아 반환하기만 하면 된다. 기본적인 sort 개념을 어떻게 응용해 볼 수 있을까를 물어보는 문제라고 생각한다. 풀이 코드class Solution: def resultsArray(self, nums: List[int], k: int) -> List[int..
3254. Find the Power of K-Size Subarrays IProblem : https://leetcode.com/problems/find-the-power-of-k-size-subarrays-i Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 어떻게 문제를 분류해 볼 수 있을까.. 싶은 문제. 연속 숫자로 sort된 길이를 임시로 저장해가며, 그 길이가 k 이상이면 그 인덱스의 숫자를 (maximum 값이 현재 index임이 충족된다), 그렇지 않다면 -1을 담아 반환하기만 하면 된다. 기본적인 sort 개념을 어떻게 응용해 볼 수 있을까를 물어보는 문제라고 생각한다. 풀이 코드class Solution: def resultsArray(self, nums: List[int], k: int) -> List[int..
2024.11.16 -
Problem : https://leetcode.com/problems/minimized-maximum-of-products-distributed-to-any-store/ Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 헤매고 헤매다가 힌트 하나를 보고 깨달은 문제. binary search의 응용 문제이다. 임의의 수 m에 대해서 모든 product를 m 이하가 되도록 나눌때, 이 product의 총 개수가 n이하인지를 검사하면 된다. 이를 기준으로 binary search를 수행해 최소가 되는 m(즉 lower bound)를 찾는 게 목표가 되겠다class Solution: def check(self, n, quantities, target): res..
2064. Minimized Maximum of Products Distributed to Any StoreProblem : https://leetcode.com/problems/minimized-maximum-of-products-distributed-to-any-store/ Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 헤매고 헤매다가 힌트 하나를 보고 깨달은 문제. binary search의 응용 문제이다. 임의의 수 m에 대해서 모든 product를 m 이하가 되도록 나눌때, 이 product의 총 개수가 n이하인지를 검사하면 된다. 이를 기준으로 binary search를 수행해 최소가 되는 m(즉 lower bound)를 찾는 게 목표가 되겠다class Solution: def check(self, n, quantities, target): res..
2024.11.14 -
Problem : https://leetcode.com/problems/count-the-number-of-fair-pairs Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 모바일로 풀어 보는 경우를 생각해서 탬플릿을 단순화해야할까? 싶다. 각설하고, 처음 접근법은 binary search로 풀어보자고 생각했다. lower bound와 upper bound는 O(logN)시간복잡도로 구할 수 있고, 하나의 인자를 고정한 체로 다른 인자에 대해 lower bound와 upper bound를 구할 수 있기 때문이다. 이를테면, lower
2563. Count the Number of Fair PairsProblem : https://leetcode.com/problems/count-the-number-of-fair-pairs Difficulty : Medium Status : Solved Time : ??:??:?? 풀이 모바일로 풀어 보는 경우를 생각해서 탬플릿을 단순화해야할까? 싶다. 각설하고, 처음 접근법은 binary search로 풀어보자고 생각했다. lower bound와 upper bound는 O(logN)시간복잡도로 구할 수 있고, 하나의 인자를 고정한 체로 다른 인자에 대해 lower bound와 upper bound를 구할 수 있기 때문이다. 이를테면, lower
2024.11.13 -
Problem : https://leetcode.com/problems/shortest-subarray-with-or-at-least-k-ii/ Difficulty : Medium Status : Solved Time : 00:19:02 문제 설명 더보기음이 아닌 정수로 구성된 배열 nums와 정수 k가 주어진다. 어떤 배열이 특별하다는 의미는 그 배열에 속한 모든 원소들의 비트 OR이 적어도 k이상일 때를 의미한다. nums의 부분 배열 중 가장 짧은 길이의 특별한 부분 배열의 길이를 반환하라. 만약 그러한 부분 배열이 없다면 -1을 출력하라. 풀이 풀이 코드class Solution: def add(self, num) : for i in range(self.length) : ..
3097. Shortest Subarray With OR at Least K IIProblem : https://leetcode.com/problems/shortest-subarray-with-or-at-least-k-ii/ Difficulty : Medium Status : Solved Time : 00:19:02 문제 설명 더보기음이 아닌 정수로 구성된 배열 nums와 정수 k가 주어진다. 어떤 배열이 특별하다는 의미는 그 배열에 속한 모든 원소들의 비트 OR이 적어도 k이상일 때를 의미한다. nums의 부분 배열 중 가장 짧은 길이의 특별한 부분 배열의 길이를 반환하라. 만약 그러한 부분 배열이 없다면 -1을 출력하라. 풀이 풀이 코드class Solution: def add(self, num) : for i in range(self.length) : ..
2024.11.10