PS
-
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 -
Problem : https://leetcode.com/problems/minimum-array-end Difficulty : Medium Status : Solved Time : 00:08:19 문제 설명 더보기n,x 두 정수가 주어진다. n 크기의 정수로 구성된 배열 array를 생성해야 한다. 이 때 0 nums[n-1]의 최솟값을 구하여라. 풀이 풀이 코드class Solution: def minEnd(self, n: int, x: int) -> int: nidx = 0 xidx = 0 result = x while n-1 >= (1
3133. Minimum Array EndProblem : https://leetcode.com/problems/minimum-array-end Difficulty : Medium Status : Solved Time : 00:08:19 문제 설명 더보기n,x 두 정수가 주어진다. n 크기의 정수로 구성된 배열 array를 생성해야 한다. 이 때 0 nums[n-1]의 최솟값을 구하여라. 풀이 풀이 코드class Solution: def minEnd(self, n: int, x: int) -> int: nidx = 0 xidx = 0 result = x while n-1 >= (1
2024.11.09 -
Problem : https://leetcode.com/problems/maximum-xor-for-each-query Difficulty : Medium Status : Solved Time : 00:04:49 문제 설명 더보기n개의 음이 아닌 정수로 구성된 정렬된 배열 nums와 정수 maximumBit를 입력으로 받는다. n개의 쿼리를 수행한다.* 음이 아닌 정수 k를 찾는다. 이 때 k는 nums[0] ~ nums[nums.leingth-1]의 XOR값을 최대화시키는 값이다. k는 i번째 쿼리의 정답이다.* nums의 가장 마지막 원소를 제거한다. answer 배열을 반환하라. 이 때 answer의 i번째 원소는 i번째 쿼리의 정답이다. 풀이 XOR의 성질을 이용해서 풀이해보자. XOR의 연산은..
1829. Maximum XOR for Each QueryProblem : https://leetcode.com/problems/maximum-xor-for-each-query Difficulty : Medium Status : Solved Time : 00:04:49 문제 설명 더보기n개의 음이 아닌 정수로 구성된 정렬된 배열 nums와 정수 maximumBit를 입력으로 받는다. n개의 쿼리를 수행한다.* 음이 아닌 정수 k를 찾는다. 이 때 k는 nums[0] ~ nums[nums.leingth-1]의 XOR값을 최대화시키는 값이다. k는 i번째 쿼리의 정답이다.* nums의 가장 마지막 원소를 제거한다. answer 배열을 반환하라. 이 때 answer의 i번째 원소는 i번째 쿼리의 정답이다. 풀이 XOR의 성질을 이용해서 풀이해보자. XOR의 연산은..
2024.11.08 -
problem : https://school.programmers.co.kr/learn/courses/30/lessons/340212?language=python3 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr difficulty : LV2 status : solved 모바일로 간략하게 써본다! (나중에 수정 예정이다) 우선 확인해야 할 사항은, 주어진 level에서 총 소요시간이 얼마나 소요되는지를 구현하는 제 1과제이다. 수식으로 결론을 지으면 다음과 같이 나온다. t_cur_total = t_cur + (t_cur + t_prev) * max(0, diff_cur - level) 수식 유도 자체는..
[프로그래머스/LV2] 퍼즐 문제problem : https://school.programmers.co.kr/learn/courses/30/lessons/340212?language=python3 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr difficulty : LV2 status : solved 모바일로 간략하게 써본다! (나중에 수정 예정이다) 우선 확인해야 할 사항은, 주어진 level에서 총 소요시간이 얼마나 소요되는지를 구현하는 제 1과제이다. 수식으로 결론을 지으면 다음과 같이 나온다. t_cur_total = t_cur + (t_cur + t_prev) * max(0, diff_cur - level) 수식 유도 자체는..
2024.11.07 -
Problem : https://leetcode.com/problems/find-if-array-can-be-sorted Difficulty : Medium Status : Solved Time : 00:10:48 문제 설명 더보기양의 정수로 구성된 0-인덱스의 배열 nums가 주어진다. 하나의 연산에서, 두 인접한 숫자가 같은 set bit(이진수로 나타냈을 때 1의 개수)를 가질 때 교환할 수 있다. 0번을 포함해서 임의의 숫자대로 이 연산을 수해할 수 있다. 만약 배열을 정렬할 수 있다면 True를, 그렇지 않다면 False를 반환하라. 풀이 첫 번째 풀이.nums의 길이가 100을 넘지 않으므로, 그냥 버블 정렬해보자. 정렬 과정에서 인접한 숫자들을 계속해서 참조하므로 확인이 가능하다. 만약 ..
3011. Find if Array Can Be SortedProblem : https://leetcode.com/problems/find-if-array-can-be-sorted Difficulty : Medium Status : Solved Time : 00:10:48 문제 설명 더보기양의 정수로 구성된 0-인덱스의 배열 nums가 주어진다. 하나의 연산에서, 두 인접한 숫자가 같은 set bit(이진수로 나타냈을 때 1의 개수)를 가질 때 교환할 수 있다. 0번을 포함해서 임의의 숫자대로 이 연산을 수해할 수 있다. 만약 배열을 정렬할 수 있다면 True를, 그렇지 않다면 False를 반환하라. 풀이 첫 번째 풀이.nums의 길이가 100을 넘지 않으므로, 그냥 버블 정렬해보자. 정렬 과정에서 인접한 숫자들을 계속해서 참조하므로 확인이 가능하다. 만약 ..
2024.11.06