## 목록coding test/leetCode (58)

## .Zzumbong

**[leetCode/JS] 896. Monotonic Array**

난이도 [ 😊 ] Easy 문제 설명 An array is monotonic if it is either monotone increasing or monotone decreasing. An array nums is monotone increasing if for all i

**[leetCode/JS] 880. Decoded String at Index**

난이도 [ 🤔 ] Medium 문제 설명 You are given an encoded string s. To decode the string to a tape, the encoded string is read one character at a time and the following steps are taken: If the character read is a letter, that letter is written onto the tape. If the character read is a digit d, the entire current tape is repeatedly written d - 1 more times in total. Given an integer k, return the kth lette..

**[leetCode/JS] 905. Sort Array By Parity**

난이도 [😊 ] Easy 문제 설명 Given an integer array nums , move all the even integers at the beginning of the array followed by all the odd integers. Return any array that satisfies this condition. 정수 배열 nums 가 주어지면 배열의 앞부분으로 짝수 정수를 모두 이동시키고 그 뒤에 홀수 정수를 이동해라. 입출력 예 Example 1: Input: nums = [3,1,2,4] Output: [2,4,3,1] Explanation: The outputs [4,2,3,1], [2,4,1,3], and [4,2,1,3] would also be accepted. Exa..

**[leetCode/JS] 841. Keys and Rooms**

난이도 [ 👿 😊 🤔 ] Hard Medium Easy 문제 설명 There are n rooms labeled from 0 to n - 1 and all the rooms are locked except for room 0. Your goal is to visit all the rooms. However, you cannot enter a locked room without having its key. When you visit a room, you may find a set of distinct keys in it. Each key has a number on it, denoting which room it unlocks, and you can take all of them with you to un..

**[leetCode/JS] 739. Daily Temperatures**

난이도 [ 🤔 ] Medium 문제 설명 Given an array of integers temperatures represents the daily temperatures, return an array answer such that answer[i] is the number of days you have to wait after the ith day to get a warmer temperature. If there is no future day for which this is possible, keep answer[i] == 0 instead. 일일 온도가 입력된 배열에서 더 따듯해지는 날까지의 일 수의 배열을 반환하면된다. 없으면 0으로 리턴한다. 입출력 예 Example 1: Input: temp..

**[leetCode/JS] 150. Evaluate Reverse Polish Notation**

난이도 [ 🤔 ] Medium 문제 설명 Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are +, -, *, and /. Each operand may be an integer or another expression. Note that division between two integers should truncate toward zero. It is guaranteed that the given RPN expression is always valid. That means the expression would always evaluate to a result, and there will n..

**[leetCode/JS] 232. Implement Queue using Stacks**

난이도 [ 😊 ] Easy 문제 설명 Implement a first in first out (FIFO) queue using only two stacks. The implemented queue should support all the functions of a normal queue (push, peek, pop, and empty). Implement the MyQueue class: void push(int x) Pushes element x to the back of the queue. int pop() Removes the element from the front of the queue and returns it. int peek() Returns the element at the front ..

**[leetCode/JS] 1143. Longest Common Subsequence**

난이도 [ 🤔 ] Medium 문제 설명 Given two strings text1 and text2, return the length of their longest common subsequence. If there is no common subsequence, return 0. A subsequence of a string is a new string generated from the original string with some characters (can be none) deleted without changing the relative order of the remaining characters. For example, "ace" is a subsequence of "abcde". A commo..

**[leetCode/JS] 152. Maximum Product Subarray**

난이도 [ 🤔 ] Medium 문제 설명 Given an integer array nums, find a subarray that has the largest product, and return the product. The test cases are generated so that the answer will fit in a 32-bit integer. 연속된 element 중 곱했을 때, 가장큰 수를 return 한다. 입출력 예 Example 1: Input: nums = [2,3,-2,4] Output: 6 Explanation: [2,3] has the largest product 6. Example 2: Input: nums = [-2,0,-1] Output: 0 Explanation: The..

**[leetCode/JS] 198. House Robber**

난이도 [ 🤔 ] Medium 문제 설명 You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security systems connected and it will automatically contact the police if two adjacent houses were broken into on the same night. Given an integer array nums represent..

**[leetCode/JS] 931. Minimum Falling Path Sum**

난이도 [ 🤔 ] Medium 문제 설명 Given an n x n array of integers matrix, return the minimum sum of any falling path through matrix. A falling path starts at any element in the first row and chooses the element in the next row that is either directly below or diagonally left/right. Specifically, the next element from position (row, col) will be (row + 1, col - 1), (row + 1, col), or (row + 1, col + 1). n ..

**[leetCode/JS] 70. Climbing Stairs**

난이도 [ 😊 ] Easy 문제 설명 You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top? n 계단을 올라가는데, 1 또는 2칸 씩 올라 갈 때, 모든 경우의 수는 얼마인가? 입출력 예 Example 1: Input: n = 2 Output: 2 Explanation: There are two ways to climb to the top. 1. 1 step + 1 step 2. 2 steps Example 2: Input: n = 3 Output: 3 Explanation..

**[leetCode/JS] 124. Binary Tree Maximum Path Sum**

난이도 [ 👿 ] Hard 문제 설명 A path in a binary tree is a sequence of nodes where each pair of adjacent nodes in the sequence has an edge connecting them. A node can only appear in the sequence at most once. Note that the path does not need to pass through the root. The path sum of a path is the sum of the node's values in the path. Given the root of a binary tree, return the maximum path sum of any non..

**[leetCode/JS] 1339. Maximum Product of Splitted Binary Tree**

난이도 [ 🤔 ] Medium 문제 설명 Given the root of a binary tree, split the binary tree into two subtrees by removing one edge such that the product of the sums of the subtrees is maximized. Return the maximum product of the sums of the two subtrees. Since the answer may be too large, return it modulo 109 + 7. Note that you need to maximize the answer before taking the mod and not after taking it. 문제가 좀 복..

**[leetCode/JS] 1026. Maximum Difference Between Node and Ancestor**

난이도 [ 🤔 ] Medium 문제 설명 Given the root of a binary tree, find the maximum value v for which there exist different nodes a and b where v = |a.val - b.val| and a is an ancestor of b. A node a is an ancestor of b if either: any child of a is equal to b or any child of a is an ancestor of b. 이진트리의 상위, 하위 노드의 a-b 의 최대값을 찾는 문제다. 입출력 예 Example 1: Input: root = [8,3,10,1,6,null,14,null,null,4,7,13] Outpu..

**[leetCode/JS] 872. Leaf-Similar Trees**

난이도 [ 😊 ] Easy 문제 설명 Consider all the leaves of a binary tree, from left to right order, the values of those leaves form a leaf value sequence. For example, in the given tree above, the leaf value sequence is (6, 7, 4, 9, 8). Two binary trees are considered leaf-similar if their leaf value sequence is the same. Return true if and only if the two given trees with head nodes root1 and root2 are le..

**[leetCode/JS] 938. Range Sum of BST**

난이도 [ 😊 ] Easy 문제 설명 Given the root node of a binary search tree and two integers low and high, return the sum of values of all nodes with a value in the inclusive range [low, high]. 2진 트리의 노드 값이 low, high 범위에 들어오면 모두 더해서 return 한다. 입출력 예 Example 1: Input: root = [10,5,15,3,7,null,18], low = 7, high = 15 Output: 32 Explanation: Nodes 7, 10, and 15 are in the range [7, 15]. 7 + 10 + 15 = 32. Exam..

**[leetCode/JS] 328. Odd Even Linked List**

난이도 [ 🤔 ] Medium 문제 설명 Given the head of a singly linked list, group all the nodes with odd indices together followed by the nodes with even indices, and return the reordered list. The first node is considered odd, and the second node is even, and so on. Note that the relative order inside both the even and odd groups should remain as it was in the input. You must solve the problem in O(1) extra..

**[leetCode/JS] 876. Middle of the Linked List**

난이도 [ 😊 ] Easy 문제 설명 Given the head of a singly linked list, return the middle node of the linked list. If there are two middle nodes, return the second middle node. 단일 linked List 를 준다. list의 중간 부터 return하는데, 중간이 2개 인 경우(짝수 length) 일땐, 2번째 중간 값 부터 return 해준다. 입출력 예 Example 1: Input: head = [1,2,3,4,5] Output: [3,4,5] Explanation: The middle node of the list is node 3. Example 2: Input: head = [..

**[leetCode/JS] 2256. Minimum Average Difference**

난이도 [ 🤔 ] Medium 문제 설명 You are given a 0-indexed integer array nums of length n. The average difference of the index i is the absolute difference between the average of the first i + 1 elements of nums and the average of the last n - i - 1 elements. Both averages should be rounded down to the nearest integer. Return the index with the minimum average difference. If there are multiple such indice..