전체 글 20

[알고리즘] 숫자 문자열과 영단어 javascript

문제설명 숫자 및 영단어 참조 제한사항 / 입출력 예 입출력 예 설명 제한시간 안내 정확성 테스트 : 10초 이전 문제들에도 있었는지 모르겠지만 이 문제는 제한시간이 걸려있다.. 문제를 읽으면서 풀이과정을 상상했을때 숫자와 영단어 배열을 만들어주고 각 배열을 for문을 사용해서 돌린다음 if문으로 비교해서 맞는 값끼리 replace(찾는문자열, 바꿀문자열)을 통해 변경할 예정이었다. 문제풀이 // let word = { // '0' : 'zero', // '1' : 'one', // '2' : 'two', // '3' : 'three', // '4' : 'four&#39..

카테고리 없음 2022.01.19

[알고리즘] 모의고사 javascript

문제 설명 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ... 1번 문제부터 마지막 문제까지의 정답이 순서대로 들은 배열 answers가 주어졌을 때, 가장 많은 문제를 맞힌 사람이 누구인지 배열에 담아 return 하도록 solution 함수를 작..

카테고리 없음 2022.01.19

[알고리즘] 최소직사각형 javascript

문제설명 문제설명2 예시 입출력 예시 문제풀이 이번문제는 글이 하도 많아서 시작하는데 한참헤맸다. 집중이 잘 안돼.. 사실for문 말고는 감이 전혀 안왔다. function solution(sizes) { let w = []; // 가로 선언 let h = []; // 세로 선언 for(let i=0; i sizes[i][1] ){ // console.log(sizes[i][0]) // 60, 60, 80 // console.log(sizes[i][1]) // 50, 30, 40, w.push(sizes[i][0]) // 푸쉬는 배열에 추가ㅏㅏㅏ h.push(sizes[i][1]) }else{ w.push(sizes[i][1]) h.push(sizes[i][0]) } }// 리듀스로 가로 배열중 최고값 ..

카테고리 없음 2022.01.18

[알고리즘] 제일 작은 수 제거하기 javascript

문제 설명 정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다. 제한 조건 arr은 길이 1 이상인 배열입니다. 인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다. 문제풀이 문제 예시를 보며 문제파악을 했고 제곱근 만드는방법을 찾아봤다. 그러고 바로 코드 돌려보면 역시 기대도 안했음. 실패. 오늘도 답코드를 보며 내머리를 정비해본다. function solution(arr) { // console.log("arr : ", arr); // arr..

카테고리 없음 2022.01.18

[알고리즘] 자릿수 더하기 javascript

문제 설명 자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다. 제한사항 N의 범위 : 100,000,000 이하의 자연수 입출력 예 N answer | 123 | 6 | | --- | --- | | 987 | 24 | 입출력 예 설명 입출력 예 #1 문제의 예시와 같습니다. 입출력 예 #2 9 + 8 + 7 = 24이므로 24를 return 하면 됩니다. 문제풀이 문제를 읽자마자 가우스님이 생각났다. 등차수열.. 뭐 이렇게 더하고 저렇게 더하면 주어진 숫자의 총 합이 나온다. ex) (x, y) (x + y) * (( y - x ) + 1) / 2 요 공식이다. 공식..

카테고리 없음 2022.01.17

[알고리즘] 서울에서 김서방 찾기 javascript

문제 설명 String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제한 사항 seoul은 길이 1 이상, 1000 이하인 배열입니다. seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다. "Kim"은 반드시 seoul 안에 포함되어 있습니다. 입출력 예 seoul return ["Jane", "Kim"] "김서방은 1에 있다" 문제풀이 for문을 통해 seoul의 값을 구한 다음 indexOf 매서드를 더해 정답을 구하자 라는 생각으로 시작 하였음. function solution(seoul) { va..

카테고리 없음 2022.01.17

[알고리즘] 나누어 떨어지는 숫자 배열 javascript

문제 설명 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,2,6] 10 [-1] 입출력 예 설명 입출력 예#1 arr의 원소 중 5로 나누어 떨어지는 원소는 5와 10입니다. 따라..

카테고리 없음 2022.01.15

[알고리즘] 행렬의 덧셈 문제 javascript

문제 설명 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 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]] 문제풀이 각 arr1과 arr2를 반복문을 통해 뽑아 낸 뒤에 더해주면 된다. function solution(a, b) { let result = []; // 이렇게 쓰는것도 나중에 다시 확인 for (let i = 0; i < a.l..

카테고리 없음 2022.01.15

[알고리즘] 없는 숫자 더하기 문제 javascript

문제 설명 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 수 ≤ 9 numbers의 모든 수는 서로 다릅니다 입출력 예 문제풀이 처음 문제 풀이 생각 전체 0 ~ 9 까지의 숫자에 number을 비교하여 없는 것들을 골라내 더하면 되겠구나 라고 생각했다. 당연하겠지만 기본코드도 몰라 헤매다 결국에는 풀이를 보면서 이해하는 방식을 택했다. function solution(num) { let answer = 0; for(let i = 0; i < 10; i++){ ..

카테고리 없음 2022.01.14

[알고리즘] 짝수 홀수 문제 javascript

프로그래머스 제일 쉽다던 문제 처음 하는 나한테는 안쉬웠다. 문제 주어진 정수 num이 짝수일 경우 "Even"을 반환하고 홀수인 경우 "Odd"를 반환하는 함수, solution을 완성해주세요. 입출력 예 내 풀이 나머지 연산자인 "%"만 알고 있으면 금방 풀 수 있는 문제였다. 정수를 2로 나눈 나머지가 0일 경우 짝수이고, 0이 아닐 경우 홀수이다. function solution(num) { var answer = &#39;&#39;; //변수 선언 if (num % 2 === 0) { // 홀짝 확인 조건 return answer = &#39;Even&#39; // 짝일 때 리턴값 } else { return answer = &#39;Odd&#39; // 홀일 때 리턴값 } return answ..

카테고리 없음 2022.01.14