Lucky Charms Clover

⚙️ 코딩테스트

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 369게임

문제 및 제한사항 머쓱이는 친구들과 369게임을 하고 있습니다. 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임입니다. 머쓱이가 말해야하는 숫자 order가 매개변수로 주어질 때, 머쓱이가 쳐야할 박수 횟수를 return 하도록 solution 함수를 완성해보세요. **제한사항** 1 ≤ order ≤ 1,000,000 풀이 방법 풀이 방법은 3가지다. 1) if문 order가 정수이기에 문자로 바꿔주고, 해당 인덱스의 값을 3으로 나눴을 때 나머지가 0이면 1씩 더하게 했다. 여기서 킥은 해당 인덱스의 값이 0일 때에도 3으로 나누면 0이 나온다는 것이라서, 0이 아니라는 조건도 추가해주었다. 2) 정규 표현식 (어제오늘 정규..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 피자 나눠 먹기(2)

문제 및 제한사항 머쓱이네 피자가게는 피자를 여섯 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 매개변수로 주어질 때, n명이 주문한 피자를 남기지 않고 모두 같은 수의 피자 조각을 먹어야 한다면 최소 몇 판을 시켜야 하는지를 return 하도록 solution 함수를 완성해보세요. **제한사항** 1 ≤ n ≤ 100 풀이 방법 어렵게 생각했는데 너무 허무하게 풀려서 할 말이 없었던 문제... 😔 while 문을 써서 피자를 인원 수대로 나눴을 때 나머지가 없을 때까지 돌린다. 나머지가 나온다면 피자 1판(+6)을 더해주고 계속 돌리고, 나머지가 0일 때 그 피자를 판 단위로 나눠준다. 즉 내가 계속 더한 것은 피자 조각이기 때문에 조각을 몇 판의 개념으로 바꿔줘야 하기 때문... 코드 fun..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 외계행성의 나이

문제 및 제한사항 우주여행을 하던 머쓱이는 엔진 고장으로 PROGRAMMERS-962 행성에 불시착하게 됐습니다. 입국심사에서 나이를 말해야 하는데, PROGRAMMERS-962 행성에서는 나이를 알파벳으로 말하고 있습니다. a는 0, b는 1, c는 2, ..., j는 9입니다. 예를 들어 23살은 cd, 51살은 fb로 표현합니다. 나이 age가 매개변수로 주어질 때 PROGRAMMER-962식 나이를 return하도록 solution 함수를 완성해주세요. **제한사항** age는 자연수입니다. age ≤ 1,000 PROGRAMMERS-962 행성은 알파벳 소문자만 사용합니다. 풀이 방법 예를 들어 age가 23일 경우, result는 "cd"가 리턴되어야 한다. 먼저 a~j를 어레이에 넣어주고, ..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 가장 큰 수 찾기

문제 및 제한사항 정수 배열 array가 매개변수로 주어질 때, 가장 큰 수와 그 수의 인덱스를 담은 배열을 return 하도록 solution 함수를 완성해보세요. **제한사항** 1 ≤ array의 길이 ≤ 100 0 ≤ array 원소 ≤ 1,000 array에 중복된 숫자는 없습니다. 풀이 방법 예를 들어 array = [1, 8, 3]일 경우, 가장 큰 수인 8과 8의 인덱스인 1이 [8, 1]의 형태로 출력되어야 한다. Math.max로 array 안에 있는 요소들을 다 비교하고 싶다면 Math.max(...array)처럼 전개 구문을 써준다. 해서 가장 큰 값을 찾았다면, 맨 처음 array에서 이 수의 인덱스를 찾아주기 위해 indexOf()를 사용한다. 큰 값과 인덱스를 어레이 안에 넣어..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 배열 회전시키기

문제 및 제한사항 정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요. **제한사항** 3 ≤ numbers의 길이 ≤ 20 direction은 "left" 와 "right" 둘 중 하나입니다. 풀이 방법 예를 들어 numbers=[1, 2, 3]일 때, direction이 right라면 [3, 1, 2]가 리턴되어야 한다. if문으로 방향이 right인지 left인지 나누어준다. right라면 맨 오른쪽의 요소를 삭제 > 맨 왼쪽으로 넣어주어야 한다. 삭제할 때에는 pop()을, 맨 왼쪽으로 추가할 때에는 unshift()를 써주었다. un..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 인덱스 바꾸기

문제 및 제한사항 문자열 my_string과 정수 num1, num2가 매개변수로 주어질 때, my_string에서 인덱스 num1과 인덱스 num2에 해당하는 문자를 바꾼 문자열을 return 하도록 solution 함수를 완성해보세요. **제한사항** 1

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 직각삼각형 출력하기

문제 및 제한사항 "*"의 높이와 너비를 1이라고 했을 때, "*"을 이용해 직각 이등변 삼각형을 그리려고합니다. 정수 n 이 주어지면 높이와 너비가 n 인 직각 이등변 삼각형을 출력하도록 코드를 작성해보세요. **제한사항** 1 ≤ n ≤ 10 풀이 방법 들어가자마자 백준마냥 readline모듈이 있어서 문제가 잘못됐나 바보 같은 생각을 했다. 사담인데 백준에서 JS를 풀려면 fs든 readline이든 모듈이 필요한 걸로 알고 있어 어려워보여 프로그래머스로 온 건데, 여기서 이렇게 만나니 어떻게든 해야했군 하고 이참에 readline모듈 쓰는 법에 대해서도 알아봤다. 각설하고 모듈 이해만 하면 코드 자체는 쉽게 짤 수 있다. 주어진 숫자가 3이라면 * ** *** 이렇게 높이, 너비가 3인 직각삼각형..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 최댓값 만들기 (2)

문제 및 제한사항 정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소 중 두 개를 곱해 만들 수 있는 최댓값을 return하도록 solution 함수를 완성해주세요. **제한사항** -10,000 ≤ numbers의 원소 ≤ 10,000 2 ≤ numbers 의 길이 ≤ 100 풀이 방법 예를 들어 numbers = [1, 2, -3, 4, -5] 일 경우 최댓값은 15가 되어야 한다. 음수, 양수, 0, 같은 수까지 경우의 수가 많아서 (특히 음수) 어떻게 해야 할지 고민했는데 의외로 간단했다. 먼저 내림차순이든 오름차순이든 차순으로 정리를 한다 > 그러면 한쪽엔 양수/한쪽엔 음수가 있게 된다. 예시를 내림차순으로 해보면 아래와 같다. 이 때 큰수끼리 곱해보고 작은수끼리 곱했을 때 ..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : n의 배수 고르기

문제 및 제한사항 정수 n과 정수 배열 numlist가 매개변수로 주어질 때, numlist에서 n의 배수가 아닌 수들을 제거한 배열을 return하도록 solution 함수를 완성해주세요. **제한사항** 1 ≤ n ≤ 10,000 1 ≤ numlist의 크기 ≤ 100 1 ≤ numlist의 원소 ≤ 100,000 풀이 방법 예를 들어 n = 3, numlist = [4, 5, 6, 7, 8, 9, 10, 11, 12]의 경우 n의 배수인 [6, 9, 12]만 출력되어야 한다. numlist 안에 있는 요소들을 n으로 나누었을 때 나머지가 없다면 n의 배수이므로 filter를 사용해서 풀었다. 코드 function solution(n, numlist) { return numlist.filter((it..

⚙️ 코딩테스트

[JavaScript] 프로그래머스 코딩테스트 입문 : 주사위의 개수

문제 및 제한사항 머쓱이는 직육면체 모양의 상자를 하나 가지고 있는데 이 상자에 정육면체 모양의 주사위를 최대한 많이 채우고 싶습니다. 상자의 가로, 세로, 높이가 저장되어있는 배열 box와 주사위 모서리의 길이 정수 n이 매개변수로 주어졌을 때, 상자에 들어갈 수 있는 주사위의 최대 개수를 return 하도록 solution 함수를 완성해주세요. **제한사항** box의 길이는 3입니다. box[0] = 상자의 가로 길이 box[1] = 상자의 세로 길이 box[2] = 상자의 높이 길이 1 ≤ box의 원소 ≤ 100 1 ≤ n ≤ 50 n ≤ box의 원소 주사위는 상자와 평행하게 넣습니다. 풀이 방법 예를 들어 box = [10, 8, 6], n = 3일 경우 가로 세로 높이를 계산해 주사위가 몇..

썸머몽
'⚙️ 코딩테스트' 카테고리의 글 목록 (15 Page)