일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- lodash
- 자바스크립트 문제 풀이
- Baekjoon
- 자바스크립트
- CSS
- HTML
- 타입스크립트
- stack문제
- 자바스크립트 알고리즘 문제
- 프론트엔드
- leetcode문제풀이
- 리액트
- 자바스크립트 문제풀이
- JS
- 프로그래머스
- til
- 알고리즘문제풀이
- Next
- NPM
- 자바스크립트 연결리스트
- JavaScript
- 리액트쿼리
- next13
- Next.js13
- leetcode
- 자바스크립트 문제
- 제로베이스
- 자바스크립트코딩테스트
- 자바스크립트 알고리즘
- 객체 프로퍼티
- Today
- Total
목록Code note/자바스크립트 알고리즘 문제풀이 (56)
코드노트
문제 설명 더보기 You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the ith line are (i, 0) and (i, height[i]). Find two lines that together with the x-axis form a container, such that the container contains the most water. Return the maximum amount of water a container can store. height길이 의 정수 배열이 제공 됩니다 n. 선의 두 끝점이 및 가 되도록 n수직선이 그려집니다. i..
keys 더보기 문제 설명 열쇠와 문은 알파벳으로 이루어져있다. 예를 들어 열쇠의 획득 순서는 "bgr", 앞에 놓인 문들은 "RGB"라고 했을 때 r열쇠와 R문이 매칭된다. g열쇠와 G문이 매칭되고 마지막으로 b문과 B문을 매칭하여 탈출할 수 있다. 이 때, 던전을 탈출할 수 있다면 YES, 탈출할 수 없다면 NO를 출력한다. 테스트 케이스 keys = "rgb" doors = "RGB" 출력값 NO - 이 문제는 스택문제였다. 그냥 순서대로 대문자 또는 소문자로 바꾸기만 하면 될 줄 알았다. - 예를 보게 되면 keys의 첫 문자와 doors의 끝문자가 맞으면 통과되는걸 볼 수 있다. function solution(keys, doors) { keys = keys.split(''); doors = d..
더보기 문제 설명 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 없습니다.) 예를 들어 A = [1, 4, 2] , B = [5, 4, 4] 라면 A에서 첫번째 숫자인 1, B에서 첫번째 숫자인 5를 뽑아 곱하여 더합니다. (누적된 값 : 0 + 5(1x5) = 5) A에서 두번째 숫자인 4, B에서 세번째 숫자인 4를 뽑아 곱하여 더합니다. (누적된 값 : 5 + 16(4x4) ..
문제 설명 8. String to Integer (atoi) / 문자열을 정수로(atoi) 선행 공백을 읽고 무시하십시오. 다음 문자(문자열 끝에 아직 없는 경우)가 '-'또는 '+'. 이 문자를 읽으십시오. 이것은 최종 결과가 각각 음수인지 양수인지를 결정합니다. 둘 다 없으면 결과가 양수라고 가정합니다. 다음 숫자가 아닌 문자 또는 입력 끝에 도달할 때까지 다음 문자를 읽습니다. 나머지 문자열은 무시됩니다. 이 숫자를 정수로 변환합니다(즉 "123" -> 123, , "0032" -> 32). 읽은 숫자가 없으면 정수는 0입니다. 필요에 따라 기호를 변경합니다(2단계부터). 정수가 32비트 부호 있는 정수 범위를 벗어나면 해당 범위에 남아 있도록 정수를 클램프합니다. 특히, 보다 작은 정수 는 로 고..
문제 설명 더보기 Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0. 부호 있는 32비트 정수 x가 주어지면 숫자가 반전된 x를 반환합니다. x를 반전하면 값이 부호 있는 32비트 정수 범위 를 벗어나면 0을 반환합니다. var reverse = function (x) { let y = x; if (x < 0) x *= -1; let str = String(x).split("").reverse().join(""); if (y < 0) str ..
문제 설명 문자열 "PAYPALISHIRING"은 다음과 같이 주어진 행 수에 지그재그 패턴으로 작성됩니다. (가독성을 위해 이 패턴을 고정 글꼴로 표시할 수 있습니다.) P A H N A P L S I I G Y I R 그런 다음 "PAHNAPLSIIGYIR"을 한 줄씩 읽습니다. 문자열을 취하고 주어진 행의 수를 이 변환하는 코드를 작성하십시오: Input: s = "PAYPALISHIRING", numRows = 3 Output: "PAHNAPLSIIGYIR" - 문제를 처음보고 2차원 배열로 접근을 해야하나 라는 생각이 먼저 들었다. - 그러나 2차원 배열을 사용할 필요가 없었다. - 문제를 간단하게 설명하면 주어지는 numRows만큼 배열에 요소를 만들고 그 요소에 s문자열을 순서대로 넣어주면 ..
더보기 문제 설명 4개의 기호 (, ), [, ] 를 이용해서 만들어지는 괄호열로, 아래 규칙으로 계산하는 프로그램을 작성. 1. "()"인 괄호 열 값은 2 2. "[]"인 괄호 열 값은 3 3. "( )" 안에 들어가 있는 값은 *2 4. "[ ]" 안에 들어가 있는 값은 *3 5. 괄호가 여러개 있으면 괄호 + 괄호 ex) ()[[]]는 2 + 3 * 3 = 11이 나온다. ([])의 값은 2 * 3으로 6이다. 조건, 괄호의 쌍이 맞지 않거나 기호 순서가 비정상적인 경우에는 0을 반환한다. 입력은 4개의 기호로만 이루어진 괄호가 문자열 형태로 주어진다. - 이 문제를 stack으로 풀려고 했을 때 계산하는게 힘들었다. ()그냥 괄호면 2이지만 ()안에 다른게 있으면 *를 해줘야한다. 코드 풀이 f..
이번 문제는 stack을 활용해도 되고 그렇지 않아도 풀 수 있는 문제였다. stack을 연습중이기 때문에 stack을 활용해서 푼 풀이를 정리하려고 한다. 문제 설명 더보기 - 기린은 앞쪽만 볼 수 있다. - 다른 기린을 몇마리 볼 수 있는지 총 합을 구하는 문제 이다. - 기린은 자기 앞에 있는 기린들을 볼 수 있는데 자기보다 작거나 같은 기린만 볼 수 있다. - 자신보다 큰 기린이 나오게 되면 볼 수 없다. - 입력은 기린 별 키의 값이 들어오며 다른 기린을 볼 수 있는 총합을 구해서 반환하면 되는 문제이다. 처음에 이 문제를 보고 stack을 활용해서 어떻게 풀어야하지? 라는 생각을 했다. key, value를 활용해서 풀 수 있는 문제 였다. 예를 들어[ 5, 2, 4, 2, 6, 1 ] 의 키..
문제 설명 더보기 Given a string s consisting of words and spaces, return the length of the last word in the string. A word is a maximal substring consisting of non-space characters only. 단어와 공백으로 구성된 문자열이 주어지면 문자열의 마지막 단어 길이를 반환합니다. 단어는 공백이 아닌 문자로만 구성된 최대 부분 문자열입니다. // 1 Input: s = "Hello World" Output: 5 Explanation: The last word is "World" with length 5. // 2 Input: s = " fly me to the moon " Output..
더보기 문제 설명 고유한 정수의 정렬된 배열과 대상 값이 주어지면 대상이 발견되면 인덱스를 반환합니다. 그렇지 않은 경우 순서대로 삽입된 경우 인덱스를 반환합니다. 런타임 복잡도가 O(log n)인 알고리즘을 작성해야 합니다. // Example 1: Input: nums = [1,3,5,6], target = 5 Output: 2 // Example 2: Input: nums = [1,3,5,6], target = 2 Output: 1 // Example 3: Input: nums = [1,3,5,6], target = 7 Output: 4 역시나 leetcode문제는 문제를 잘 살펴봐야하는거 같다... 처음 문제만 보고 배열에 있는 요소를 확인해서 있으면 index를 반환하는줄 알았다.. 문제를 왜 ..