프로그래머스 1단계 : 삼총사
프로그래머스 1단계 : 삼총사 코딩테스트 연습 > 연습문제 > 삼총사 ✔ 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들..
2022. 12. 12.
프로그래머스 1단계 : 두 개 뽑아서 더하기
프로그래머스 1단계 : 두 개 뽑아서 더하기 코딩테스트 연습 > 월간 코드 챌린지 시즌1 > 두 개 뽑아서 더하기 ✔ 문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. ✔ 제한 사항 numbers의 길이는 2 이상 100 이하입니다 numbers의 모든 수는 0 이상 100 이하입니다. ✔ 입출력 예 numbers result [2,1,3,4,1] [2,3,4,5,6,7] [5,0,2,7] [2,5,7,9,12] ✔ 문제풀이 function solution(numbers) { let answer = []; for ( let i =..
2022. 12. 7.
프로그래머스 1단계 : K번째수
프로그래머스 1단계 : K번째수 코딩테스트 연습 > 정렬 > K번째수 ✔ 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 ..
2022. 12. 3.
프로그래머스 1단계 : 행렬의 덧셈
프로그래머스 1단계 : 행렬의 덧셈 코딩테스트 연습 > 연습문제 > 행렬의 덧셈 ✔ 문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. ✔ 제한 사항 행렬 arr1, arr2의 행과 열의 길이는 500을 넘지 않습니다. ✔ 입출력 예 arr1 arr2 return [[1,2],[2,3]] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3],[4]] [[4],[6]] ✔ 문제풀이 function solution(arr1, arr2) { var answer = []; for(i=0; i < arr2.length;..
2022. 11. 22.
프로그래머스 1단계 : 없는 숫자 더하기
프로그래머스 1단계 : 없는 숫자 더하기 코딩테스트 연습 > 월간 코드 챌린지 시즌3 > 없는 숫자 더하기 ✔ 문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. ✔ 제한 사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 원소 ≤ 9 numbers의 모든 원소는 서로 다릅니다. ✔ 입출력 예 numbers result [1,2,3,4,6,7,8,0] 14 [5,8,4,0,6,7,9] 6 ✔ 문제풀이 function solution(numbers) { let answer = 0; for(let i=0; i..
2022. 11. 21.
프로그래머스 1단계 : 같은 숫자는 싫어
프로그래머스 1단계 : 같은 숫자는 싫어 코딩테스트 연습 > 스택/큐 > 같은 숫자는 싫어 ✔ 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. ✔ 제한 사항 ..
2022. 11. 20.
프로그래머스 1단계 : 내적
프로그래머스 1단계 : 내적 코딩테스트 연습 > 연습문제 > 내적 ✔ 문제 설명 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) ✔ 제한 사항 a, b의 길이는 1 이상 1,000 이하입니다. a, b의 모든 수는 -1,000 이상 1,000 이하입니다. ✔ 입출력 예 a b result [1,2,3,4] [-3,-1,0,2] 3 [-1,0,1] [1,0,-1] -2 ✔ 문제풀이 function solution(a, b) { let answer = 0; for(i in a){..
2022. 11. 16.
프로그래머스 1단계 : 제일 작은 수 제거하기
프로그래머스 1단계 : 제일 작은 수 제거하기 코딩테스트 연습 > 연습문제 > 제일 작은 수 제거하기 ✔ 문제 설명 a정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. ✔ 제한 사항 arr은 길이 1 이상인 배열입니다. 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. ✔ 입출력 예 arr return [4,3,2,1] [4,3,2] [10] [-1] ✔ 문제풀이 function solution(arr) { if (arr.length ==..
2022. 11. 13.
프로그래머스 1단계 : 나누어 떨어지는 숫자 배열
프로그래머스 1단계 : 나누어 떨어지는 숫자 배열 코딩테스트 연습 > 연습문제 > 나누어 떨어지는 숫자 배열 ✔ 문제 설명 array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요. divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. ✔ 제한 사항 arr은 자연수를 담은 배열입니다. 정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다. divisor는 자연수입니다. array는 길이 1 이상인 배열입니다. ✔ 입출력 예 arr divisor return [5, 9, 7, 10] 5 [5, 10] [2, 36, 1, 3] 1 [1, 2, 3, 36] [3,..
2022. 11. 13.