목록코딩테스트 (12)
Lsiron
문제 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 함수를 완성해 주세요. 풀이=해답.function solution(arr) { let answer = [] ..
문제 1. 행렬의 덧셈 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬 arr1과 arr2를 입력받아, 행렬 덧셈의 결과를 반환하는 함수, solution을 완성해주세요. 풀이=해답.function solution(arr1, arr2) { let answer = [[]]; for (let i=0; i => 근본으로 풀었다. 2차원 배열을 초기화 시킨 후, 반복문을 통해 두 배열의 각 배열 속 배열 요소를 더한 값을 넣어 주었다. // 배열의 초기화 방법을 숙지해야겠다고 생각했다. 2차원 배열의 초기화 방법을 모르니 문제풀이가 너무 한정되어 있었다.배열의 초기화 방법 참조 : https://velog.io/@minukbak/301..
문제 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의 길이) 풀이=해답.function solution(a, b) { let answer = 0; for(let i = 0 ; i => 근본으로 풀었다. 1, 2, 3, 4, 5, 6 이렇게 값을 넣어야 한다는 걸 알면 반복문으로 풀면 되기 때문에 문제 의도만 파악하면 풀기 쉬워진다. 두 배열이 같은 길이여야 한다는 점이 흠이다. // 출제자의 의도부터 파악을 했다. 점점 문제를 풀기 시작하면 의도 먼저 파악을 하..
문제 1. 제일 작은 수 제거하기 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다 풀이=해답.function solution(arr) { return arr.length === 1 ? [-1] : arr.filter((num) => num !== Math.min(...arr))} => 삼항연산자를 사용하였다. 리턴하려는 값이 빈 배열일 경우거나, arr 배열이 [10] 일 경우는 모두 length가 1인 경우이기 때문에 arr.length가 1이면 [-1]을 반..