MapleStory Finger Point

프로그래머스

문제한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다.한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성하세요.해결 ..
1. 모스부호 (1)function solution(letter) { let morse = { '.-': 'a', '-...': 'b', '-.-.': 'c', '-..': 'd', '.': 'e', '..-.': 'f', '--.': 'g', '....': 'h', '..': 'i', '.---': 'j', '-.-': 'k', '.-..': 'l', '--': 'm', '-.': 'n', '---': 'o', '.--.': 'p', '--.-': 'q', '.-.': 'r', '...': 's', '-': 't', '..-': 'u', '...-': 'v', '.--': 'w'..
비선형 자료구조란?정의: 비선형 자료 구조는 데이터가 선형적으로 배치되지 않고,계층적 또는 비계층적으로 연결된 구조필요성: 복잡한 관계를 표현하고, 효율적인 데이터 검색 및 관리 가능종류: 트리, 그래프  트리 ⭐⭐⭐ 용어 ⭐⭐⭐ 노드: 데이터의 단위(정점) 루트: 트리의 최상위 노드(첫 노드) 리프: 자식 노드가 없는 노드(끝 노드) 서브트리: 특정 노드를 루트로 하는 하위 트리 높이: 트리의 루트에서 가장 깊은 리프까지의 경로 길이(전체 깊이) 깊이: 특정 노드가 루트에서 얼마나 떨어져 있는지를 나타냅니다 간선: 부모 노드와 자식 노드를 연결,트리는 사이클이 없고, 항상 연결되어 있어야 함. 노드 수가 n이면 간선의 수는 항상 n-1 예시: 1. 파일 시스템: 컴퓨터의 파일 시스템은 트리 구조로 표현..
문제 영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.해결 과정// 소문자로 바꾼뒤 오름차순 정렬function solution(my_string) { return my_string.toLowerCase().split('').sort().join('');} 소문자로 바꾼뒤 오름차순으로 정렬을 해서 문제를 해결하면 되었다.toLowerCase().sort()를 하니까 오류가 났다.소문자로 바꾼걸 쪼개준 뒤 다시 sort()정렬하고 join('')해줘야 오류가 안났다. join()할때는 안합쳐졌는데 join(' ')을하니 합쳐졌다.그 이유는? 🤔joi..
문제어떤 세균은 1시간에 두배만큼 증식한다고 합니다. 처음 세균의 마리수 n과 경과한 시간 t가 매개변수로 주어질 때 t시간 후 세균의 수를 return하도록 solution 함수를 완성해주세요.해결 과정function solution(n, t) { return n * 2 ** t;} 두배만큼 증식이 된다고 적혀있길래 제곱 문제로 푸는거같아서위에 코드와 같이 풀었다.
문제정수 n이 매개변수로 주어질 때 n의 각 자리 숫자의 합을 return하도록 solution 함수를 완성해주세요해결 과정function solution(n) { let answer = 0; let numToString = n.toString().split(''); for(i of numToString) { answer += Number(i); } return answer;} n.toString()을 이용하여 숫자를 문자열로 바꿨다. 이후 .split()을 이용하여 문자열을 문자 배열로 나눴다. 만일 "123"일 경우, ['1', '2', '3']으로 변환된다.  새롭게 알게된 점 (궁금증)  for of로 접근하기 전에 기본 for문을 이용해서 풀었더니 2번째 테스트코드에서 오류가 발..
문제정수 n이 매개변수로 주어질 때, n의 약수를 오름차순으로 담은 배열을 return하도록 solution 함수를 완성해주세요.해결 과정약수란 무엇인가? 어떤 수를 나눌 수 없는 자연수이다.function solution(n) { let emptyList = []; for(let i = 0; i  나머지가 0으로 떨어질때를 구하면 된다. 빈배열을 만든 뒤 몫들을 넣어 문제를 해결했다. 오름차순으로 담아야해서 return에서 sort()를 썼더니 틀렸다. 오름차순 정렬이니까 sort((a, b) => a - b) 이렇게 작성해야한다. 근데 for문으로 이미 순차적으로 나누기때문에 굳이 sort((a, b) => a - b)를 안해도 된다.참고하면 좋은 사이트https://developer.mo..
문제군 전략가 머쓱이는 전쟁 중 적군이 다음과 같은 암호 체계를 사용한다는 것을 알아냈습니다.암호화된 문자열 cipher를 주고받습니다.그 문자열에서 code의 배수 번째 글자만 진짜 암호입니다.문자열 cipher와 정수 code가 매개변수로 주어질 때 해독된 암호 문자열을 return하도록 solution 함수를 완성해주세요.해결 과정function solution(cipher, code) { var answer = ''; cipher = cipher.split(''); for(let i=code-1; i 배수로 문제를 해결하려고 했는데 그렇게 접근하면 안되었다. code를 기준으로 for문을 돌려 문제를 해결했다.
문제머쓱이는 친구들과 369게임을 하고 있습니다. 369게임은 1부터 숫자를 하나씩 대며 3, 6, 9가 들어가는 숫자는 숫자 대신 3, 6, 9의 개수만큼 박수를 치는 게임입니다. 머쓱이가 말해야하는 숫자 order가 매개변수로 주어질 때, 머쓱이가 쳐야할 박수 횟수를 return 하도록 solution 함수를 완성해보세요.해결 과정function solution(order) { var answer = 0; let count=0; let number = order.toString().replace(/\B(?=(\d{1})+(?!\d))/g, ','); for(let i = 0; i  이 문제를 처음보고 아! 숫자를 3의 배수로 나눠야겠다고 생각했다. order는 숫자가 붙어있기에..