'Jane','Kim''Kim'을 찾았을 때 해당 값을 가져오는 건 할 수 있는데, 이 'Kim'의 위치 '1'을 출력하는 방법을 모르겠어 검색해보았더니 indexof 함수가 눈에 띈다.역으로 배열을 통해 배열의 위치를 찾기 위해서는 findindex를 쓰면 될 듯
JavaScript / Object / String.length / 문자열의 길이 반환하는 속성length 함수는 이전에도 쓴 바 있으나, 배열의 수를 세기 위해 사용했었다그냥 사용하면 문자 수를 셀 수 있는 함수 였다.문자 수를 센 후, 2로 나눠 해당 순서의 문자
홀수번에는 '수', 짝수번에는 ' 박'이 반복되는 10000개 이하의 n 문자열을 만들고, 해당 숫자만큼만 substr()로 리턴하면 되지 않을까?String.prototype.repeat()repeat()을 사용하면 특정 문자열을 원하는 만큼 반복할 수 있다.보고 빵
object, array 자료형을 이용해서 3개의 상품이 들어가있는 배열(array)를 만들어보세요. Answer 1번에서 만든 변수에서 2번째 상품의 name 값을 추출해 보세요. Answer products의 갯수가 1개 이상일 때와 아닐 때를
풀이 새로 알게 된 것 이해 되지 않는 것 - Objects - Mutability Higher Order Function - Inheritance - Functions - Expects Array - Applying What We Have Learn
문제 설명 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단,
문제 설명 >수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다.마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지
문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지
전 인덱스의 값과 현 인덱스의 값이 같으면 전 인덱스 값 제거전 인덱스의 값과 현 인덱스의 값이 다르면 다음으로 넘어가기arr = 1, 1, 3, 3, 0, 1, 1 이면 1, 3, 0, 1 을 return 1,1비교 => 1제거1,3비교=> 다음으로 넘어가기3,3비교
문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면
정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.numbers의 길이는 2 이상 100 이하입니다.nu
array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.arr은 자연수를 담은 배열입니
수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다.1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ...2번 수포자가 찍는
reduce 함수arr.reduce(callback(accumulator, currentValue \[, currentIndex, array]) , initialValue)callback 함수는 배열(arr)의 모든 element를 대상으로 한번씩 호출된다. 리턴되는
다만...너무 코드가 길고 지저분하다는 느낌이 든다.다른 분들의 풀이를 공부해보자.그 수의 제곱근이 정수라면 약수의 갯수가 홀수이다.Math.sqrt(x) : x의 제곱근Number.isInteger() : 주어진 값이 정수인지 판별
그러나 오답! 특히 효율성 테스트는 모두 통과하지 못했다.에라토스테네스의 체로 이 부분을 해결할 수 있었다.1을 제외한 각 수의 배수를 모두 지워나가면, 소수만 남게 된다는 개념https://chaeyoung2.tistory.com/41https://
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 5,4,3,2,1을 리턴합니다.n은 10,000,000,000이하인 자연수입니다.n return12345 5,4,3,2,1첫 번째 풀이는 통과되지 않았는데, 그 이
행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요.행렬 arr1, arr2의 행과 열의 길이는 500을 넘
정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.arr은 길이 1 이상, 100 이하인 배열입니다.arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.arr return1,2,3,4 2.55,5 5
1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2로 나눕니다. 1-2. 입력된 수가 홀수라면 3을 곱
두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.입력첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)출력첫째 줄에 A+B를 출력한다.예제 입력 11 2예제 출력 13이제 입출력 코드를 작성해야 한다.입출력시 :var fs
문제아래 예제와 같이 고양이를 출력하시오.입력없음.출력고양이를 출력한다.예제 입력 1예제 출력 1\\ /\\ ) ( ')( / ) (\_\_)|문자열 이스케이프 문자, 역슬래시() :어떤 한 문자를 코드가 아닌 문자로 만들어주는 문자역슬래시를 문자 그대로 쓰
아래 예제와 같이 개를 출력하시오.입력없음.출력개를 출력한다.예제 입력 1 복사예제 출력 1 복사|\_/||q p| /}( 0 )"""\\|"^"\` |||\_/=\\\_\_|풀이방식은 고양이와 같다.
(세 자리 수) × (세 자리 수)는 다음과 같은 과정을 통하여 이루어진다.(1)과 (2)위치에 들어갈 세 자리 자연수가 주어질 때 (3), (4), (5), (6)위치에 들어갈 값을 구하는 프로그램을 작성하시오.첫째 줄에 (1)의 위치에 들어갈 세 자리 자연수가, 둘
두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.1 30.333333
두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A\*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 두 자연수 A와 B가 주어진다. (1 ≤ A, B ≤ 10,000)첫째 줄에 A+B, 둘째 줄에 A-B, 셋째 줄에 A\*B, 넷째 줄에
(A+B)%C는 ((A%C) + (B%C))%C 와 같을까?(A×B)%C는 ((A%C) × (B%C))%C 와 같을까?세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오.첫째 줄에 A, B, C가 순서대로 주어진다. (2 ≤ A, B,
LeetCode로 도전 시작지금까지는 주로 프로그래머스로 알고리즘 문제를 풀었었다.이후에는 백준으로 시도해봤는데,좀 더 단계 별로 차근차근 문제를 풀고 싶기도 했고, 기준치를 두고 내 위치를 가늠해 보고 싶기도 했기 때문이었다. 보통 백준 100문제, 12단계까지 풀
Given a sequence of integers as an array, determine whether it is possible to obtain a strictly increasing sequence by removing no more than one eleme
Given an array of integers, find the pair of adjacent elements that has the largest product and return that product.For inputArray = 3, 6, -2, -5, 7,
Ratiorg got statues of different sizes as a present from CodeMaster for his birthday, each statue having an non-negative integer size. Since he likes
Below we will define an n-interesting polygon. Your task is to find the area of a polygon for a given n.A 1-interesting polygon is just a square with
Given the string, check if it is a palindrome.For inputString = "aabaa", the output should becheckPalindrome(inputString) = true;For inputString = "ab
Given a year, return the century it is in. The first century spans from the year 1 up to and including the year 100, the second - from the year 101 up
After becoming famous, the CodeBots decided to move into a new building together. Each of the rooms has a different cost, and some of them are free, b
Ticket numbers usually consist of an even number of digits. A ticket number is considered lucky if the sum of the first half of the digits is equal to
Given two strings, find the number of common characters between them.ExampleFor s1 = "aabcc" and s2 = "adcaa", the output should becommonCharacterCoun
Given an array of strings, return another array containing all of its longest strings.ExampleFor inputArray = \["aba", "aa", "ad", "vcd", "aba"], the
Some people are standing in a row in a park. There are trees between them which cannot be moved. Your task is to rearrange the people by their heights
Given a rectangular matrix of characters, add a border of asterisks(\*) to it.Forpicture = "abc", "ded"the output should beaddBorder(picture
Given a rectangular matrix of characters, add a border of asterisks(\*) to it.Forpicture = "abc", "ded"the output should beaddBorder(picture
Two arrays are called similar if one can be obtained from another by swapping at most one pair of elements in one of the arrays.Given two arrays a and
You are given an array of integers. On each move you are allowed to increase exactly one of its element by one. Find the minimal number of moves requi
You are given an array of integers representing coordinates of obstacles situated on a straight line.Assume that you are jumping from the point with c
Description Given an array of integers, replace all the occurrences of elemToReplace with substitutionElem. Example For inputArray = [1, 2, 1], elem
Check if all digits of the given integer are even.ExampleFor n = 248622, the output should beevenDigitsOnly(n) = true;For n = 642386, the output shoul
Design a HashSet without using any built-in hash table libraries.void add(key) Inserts the value key into the HashSet.bool contains(key) Returns wheth
🎈문제 (A+B)%C는 ((A%C) + (B%C))%C 와 같을까? (A×B)%C는 ((A%C) × (B%C))%C 와 같을까? 세 수 A, B, C가 주어졌을 때, 위의 네 가지 값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 A, B, C가 순서대로 주어
🎈문제 두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A, B < 10) 출력 첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.
You are a product manager and currently leading a team to develop a new product. Unfortunately, the latest version of your product fails the quality c
Description Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it
각 끝부터 low와 high포인터가 가리키는 값의 제곱값을 비교한다.그 중 더 큰 값을 배열에 푸시한다.더 큰 값을 가져 이미 푸시한 값의 포인터를 옮긴다. low값을 푸시했다면 low포인터++; 반대도 마찬가지이다.배열요소의 갯수는 홀수 일 수 있다. 따라서 조건은
이게 어떻게 two pointers로 풀 수 있는 건지 모르겠다.다음 two pointers 문제들을 풀어보고 다시 돌아와보자.
leetCode discuss - 풀이와 설명 업로드직관적으로 이해할 수 있는 JS 풀이가 없는 것 같아서, 그리고 개발자를 꿈꾸는 코린이로서...! 뭔가 오픈소스에 함께 기여하는 그런 태도를 가지고 싶으니까...! Discuss에 설명과 함께 풀이를 올려두었다. 이
Description Example 1: Solution
양쪽이 바뀌어야하기 떄문에 맨 끝에 포인터를 둔다.가운데로 각각 이동하면서 서로 문자를 바꾸어준다.한 번 high에 low의 값을 할당하면 high의 값은 없어지기 때문에 미리 새로운 변수에 high의 값을 할당해놓은 다음, low에 이 변수의 값을 다시 할당해주는 방
평소에 알고리즘을 풀면서 split메서드로 쪼개 배열을 만든다음 나중에 join으로 합쳐 리턴하는 방식으로 해결하는 경우가 많았는데, 이후에 다른 풀이법을 확인했을 때 더 효율적인 방법이 많았기 때문에 이와 같은 방식으로만 푸는것을 지양했었다.하지만 이번 문제에서 일일
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.이번 문제는
Given the head of a linked list, remove the nth node from the end of the list and return its head.기본적인 원리는 다음과 같다. Description의 Example1으로 살펴보자.끝에서 n번
Given a string s, find the length of the longest substring without repeating characters.disscuss에도 풀이를 설명과 함께 올려두었다end pointer를 이동해가며 해당 알파벳이 set에 들어있
An image is represented by an m x n integer grid image where imagei represents the pixel value of the image.You are also given three integers sr, sc,
You are given an m x n binary matrix grid. An island is a group of 1's (representing land) connected 4-directionally (horizontal or vertical.) You may
You are given two binary trees root1 and root2.Imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped wh
You are given a perfect binary tree where all leaves are on the same level, and every parent has two children. The binary tree has the following defin
이번 문제는 풀이를 봐도 유독 원리가 이해가 되지를 않았다.특히 대부분의 풀이에서 next = head.next와 같이 중복된 변수를 사용해 더 헷갈렸다.그래서 직접 그림을 그려가며 이해했는데, 나처럼 이번 문제를 답지를 봐도 어떻게 푸는지 이해가 안가는 사람이 있다면
Merge two sorted linked lists and return it as a sorted list. The list should be made by splicing together the nodes of the first two lists.아직 완전히 이해했
Given an integer n, return true if it is a power of two. Otherwise, return false.An integer n is a power of two, if there exists an integer x such tha
Write a function that takes an unsigned integer and returns the number of '1' bits it has (also known as the Hamming weight).Note:Note that in some la
Description Given a non-empty array of integers nums, every element appears twice except for one. Find that single one. You must implement a solution
d190. Reverse Bits
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 t
'스택' 알고리즘을 이용한 문제를 풀어보았다.카카오 인턴십 코딩테스트에서 나왔던 문제인데, 맨 처음 코딩 공부를 시작하면서 이 문제를 보고 뭔가 거창하고 복잡해 보여서 겁먹었던 기억이 난다. ㅎㅎㅎ 사실 알고 보니 그리 어려운 문제는 아니었다.
후위연산식이 주어지면 연산한 결과를출력하는 프로그램을 작성하세요.만약 3(5+2)-9를 후위연산식으로 표현하면 352+9-로 표현되며 그 결과는 12입니다.
처음엔 문제가 생소하게 느껴져서 어떻게 접근해야할지 고민했다.포인트는, 막대기를 레이저가 자를 때와 막대기가 끝났을 때 생기는 조각의 갯수가 다르다는 부분에 초점을 맞추어 조건을 작성해주어야 한다는 것이었다.(가 나오면 막대기의 시작을 의미하므로 스택에 넣어준다.)가
queue와 princeArr 두개의 배열을 가지고 풀어볼까 생각했다.그런데 계속해서 push 하고 왕자를 지운 배열을 다시 왕자의 수만큼 각 왕자의 번호를 담은 배열을 만든다.target 번호만큼 시계방향으로 돌아야 하는데, queue의 맨 앞이 차례인 왕자라고 하고
문제 풀이 풀이1 필수과정을 담은 문자열을 배열화 해 queue로 사용했다. 설계한 교육과정을 돌면서 queue의 맨 앞요소와 같을 경우 queue의 맨 앞 요소를 삭제 해준다. 해당 과목을 이수했다고 생각하면 된다. 이 과목을 이수한 다음에 맨앞에 오는 과목은 다음
오늘은 알고리즘 문제라기 보다는, 기본 원리를 이해하고 넘어가자.DFS 알고리즘 문제를 풀 때 각 트리 구조의 노드를 이동하는 부분이 어려웠기 때문에, 이 부분에 대한 내용을 정리하고 넘어가려고 한다.전위 순회는 맨 위부터 왼쪽에서 오른쪽으로 차례대로 순회하는 것으로,
숫자로 이루어진 배열인 nums를 인자로 전달합니다. 숫자중에서 과반수(majority, more than a half)가 넘은 숫자를 반환해주세요.예를 들어,풀이는 2가지를 생각했다.하나는 보이어 무어의 과반수 투표 알고리즘을 이용한 풀이,하나는 아래의 map객체를
문제 풀이
문제 풀이
문제 풀이
N개의 원소로 구성된 자연수 집합이 주어지면, 이 집합을 두 개의 부분집합으로 나누었을 때 두 부분집합의 원소의 합이 합이 서로 같은 경우가 존재하면 'YES'를 출력하고, 그렇지 않으면 'NO'를 출력하는 프로그램을 작성하세요. 둘로 나뉘는 두 분집합 서로소 집합이며
문제의 범위를 쪼개어 범위 안에서의 답을 찾아 저장해두고,범위를 넓혀가며 좁은 범위에서 구했던 답을 이용해 점진적으로 답을 찾아가는 것철수는 계단을 오를 때 한 번에 한 계단 또는 두 계단씩 올라간다. 만약 총 4계단을 오른다면 그 방법의 수는 5가지이다.총 N계단일
철수는 학교에 가는데 개울을 만났습니다. 개울은 N개의 돌로 다리를 만들어 놓았습니다. 철 수는 돌 다리를 건널 때 한 번에 한 칸 또는 두 칸씩 건너뛰면서 돌다리를 건널 수 있습니다. 철수가 개울을 건너는 방법은 몇 가지일까요?▣ 입력설명첫째 줄은 돌의 개수인 자연수
N개의 자연수로 이루어진 수열이 주어졌을 때, 그 중에서 가장 길게 증가하는(작은 수에서 큰 수로) 원소들의 집합을 찾는 프로그램을 작성하라. 예를 들어, 원소가 2, 7, 5, 8, 6, 4, 7, 12, 3 이면 가장 길게 증가하도록 원소들을 차례대로 뽑아내면 2,
이번 정보올림피아드대회에서 좋은 성적을 내기 위하여 현수는 선생님이 주신 N개의 문제를 풀려고 합니다. 각 문제는 그것을 풀었을 때 얻는 점수와 푸는데 걸리는 시간이 주어지게 됩 니다. 제한시간 M안에 N개의 문제 중 최대점수를 얻을 수 있도록 해야 합니다. (해당문제
스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다.예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다.스파이가 가진
n개의 음이 아닌 정수들이 있습니다. 이 정수들을 순서를 바꾸지 않고 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 1, 1, 1, 1, 1로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다.사용할 수 있는 숫자가 담긴 배열 numbers, 타겟
1부터 N까지 번호가 적힌 구슬이 있습니다. 이 중 중복을 허락하여 M번을 뽑아 일렬로 나열 하는 방법을 모두 출력합니다.▣ 입력설명첫 번째 줄에 자연수 N(3<=N<=10)과 M(2<=M<=N) 이 주어집니다.▣ 출력설명맨 마지막 총 경우의 수를
다음과 같이 여러 단위의 동전들이 주어져 있을때 거스름돈을 가장 적은 수의 동전으로 교환 해주려면 어떻게 주면 되는가? 각 단위의 동전은 무한정 쓸 수 있다.▣ 입력설명첫 번째 줄에는 동전의 종류개수 N(1<=N<=12)이 주어진다. 두 번째 줄에는 N개의
10이하의 N개의 자연수가 주어지면 이 중 M개를 뽑아 일렬로 나열하는 방법을 모두 출력합 니다.▣ 입력설명첫 번째 줄에 자연수 N(3<=N<=10)과 M(2<=M<=N) 이 주어집니다. 두 번째 줄에 N개의 자연수가 오름차순으로 주어집니다.▣ 출
현수는 송아지를 잃어버렸다. 다행히 송아지에는 위치추적기가 달려 있다. 현수의 위치와 송아 지의 위치가 수직선상의 좌표 점으로 주어지면 현수는 현재 위치에서 송아지의 위치까지 다음 과 같은 방법으로 이동한다. 송아지는 움직이지 않고 제자리에 있다.현수는 스카이 콩콩을