LeetCode - Jewels and Stones

LeetCode(771) - Jewels and Stones 문제 문자열 jewels와 stones가 주어진다. stones는 내가 가지고 있는 동의 종류들이고, jewels는 보석의 종류들이다. 내가 가지고 있는 돌들 중 보석이 몇개인지 반환하라. 입력 Input: jewels = "aA", stones = "aAAbbbb" 출력 Output: 3 설명 stones는 중복이 가능하다. stones와 jewels의 각 문자는 대소문자가 구분된다. 풀이 stones를 순회하며 각 문자들을 map의 key로, 등장 횟수를 value로 저장한다. jewels를 순회하며 각 문자들을 map에서 검색 후 등장횟수들을 모두 카운트 후 반환한다....

February 5, 2023 · 1 min · 118 words · Me

LeetCode - Degree of an Array

LeetCode(697) - Degree of an Array 문제 정수 배열 nums가 주어진다. nums에서 가장 많이 등장하는 정수를 찾고, nums에서 가장 많이 등장하는 정수를 포함하는 sub array를 만들 때, 배열의 길이를 구하라. 입력 Input: nums = [1,2,2,3,1] 출력 Output: 2 설명 가장 많이 등장하는 정수는 1과 2다. 1 혹은 2가 모두 포함되는 배열의 sub array를 만들 면 다음과 같다. [1, 2, 2, 3, 1], [1, 2, 2, 3], [2, 2, 3, 1], [1, 2, 2], [2, 2, 3], [2, 2] 이 sub array 중 가장 짧은 배열의 길이를 갖는 배열은 [2, 2] 이며, 길이는 2이므로 2를 반환한다....

February 5, 2023 · 2 min · 290 words · Me

LeetCode - Two Sum IV - Input is a BST

LeetCode(653) - Two Sum IV - Input is a BST 문제 Binary Search Tree의 root node 와 정수 k가 주어진다. BST정수 중 두 정수를 조합하여 k를 만들 수 있다면 true를, 아니라면 false를 반환하라. 입력 Input: root = [5,3,6,2,4,null,7], k = 9 출력 Output: true 풀이 set은 key의 유일성을 보장하며, 고유한 key 검색 시 O(1)의 시간복잡도를 가진다. k - 특정 노드 값이면, 나머지 값에 대해 검색연산을 수행하여 값을 찾을 수 있다....

February 5, 2023 · 2 min · 230 words · Me

LeetCode 공부 - Distribute Candies

LeetCode(645) - Set Mismatch 문제 정수형 set이 배열형태로 주어진다. set은 1부터 set의 크기인 n까지 중복되지 않은 값으로 채워져 있어야 한다. nums에 하나의 정수가 다른 정수(1 <= 다른정수> <= n)로 바뀌었다. 이 중복된 수와 원래 있어야 할 수를 찾아 배열 형태로 반환하라. 입력 Input: nums = [1,2,2,4] 출력 Output: [2,3] 풀이 주어진 배열에 대해 중복을 찾아야 하고, 빠진 값 또한 찾아야 한다. 중복된 배열은 map으로 고유성을 찾고, 누락 된 값은 정렬 후 index와 값을 비교하여 다르다면 누락된 값으로 간주한다....

January 29, 2023 · 2 min · 234 words · Me

LeetCode 공부 - Distribute Candies

LeetCode(599) - Minimum Index Sum of Two Lists 문제 문자열 배열 list1과 list2가 주어진다. 다음과 같은 조건을 갖는 문자열들을 반환하라. list1, list2모두에 존재하는 문자열 문자열 중, 가장 낮은 인덱스를 갖는 문자열 가장 낮은 index가 양쪽 배열 모두 동일하다면 두 문자열을 배열 형태로 반환. 입력 list1 = ["Shogun","Tapioca Express","Burger King","KFC"], list2 = ["Piatti","The Grill at Torrey Pines","Hungry Hunter Steakhouse","Shogun" 출력 Output: ["Shogun"] 풀이 문자열을 key로, index를 value로 하는 map에 list1의 문자열들을 삽입한다....

January 29, 2023 · 2 min · 246 words · Me