반응형

알고리즘 35

프로그래머스) 실패율

https://programmers.co.kr/learn/courses/30/lessons/42889 코딩테스트 연습 - 실패율 실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스 programmers.co.kr 나의 풀이 function solution(N, stages) { const objList = []; let object = {}; for (let i = 1; i stge === i).length / stages.length; object['stage'] = i; stages = stages.filter(val => val !== i); objList.push..

IT/Algorithm 2021.10.24

프로그래머스) 오픈채팅방

https://programmers.co.kr/learn/courses/30/lessons/42888 코딩테스트 연습 - 오픈채팅방 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오 programmers.co.kr 처음으로 레벨1이 아닌 레벨2 알고리즘을 풀어보았다! 다행히도 통과하긴 했다.. ㅋㅋ 나의 풀이 function solution(record) { const object = {}; record.map(sen => sen.split(" ")).forEach(log => log[2] ? object[log[1]] = log[2] : log); return recor..

IT/Algorithm 2021.10.21

프로그래머스) x만큼 간격이 있는 n개의 숫자

https://programmers.co.kr/learn/courses/30/lessons/12954 코딩테스트 연습 - x만큼 간격이 있는 n개의 숫자 함수 solution은 정수 x와 자연수 n을 입력 받아, x부터 시작해 x씩 증가하는 숫자를 n개 지니는 리스트를 리턴해야 합니다. 다음 제한 조건을 보고, 조건을 만족하는 함수, solution을 완성해주세요. programmers.co.kr 나의 풀이 function solution(x, n) { const answer = [x]; n -= 1; while(n) { answer.push(answer[answer.length - 1] + x); n -= 1; } return answer; } while문을 사용하였고 배열의 끝 값에 x를 더한 값을 ..

IT/Algorithm 2021.10.21

프로그래머스) 콜라츠 추측

https://programmers.co.kr/learn/courses/30/lessons/12943 코딩테스트 연습 - 콜라츠 추측 1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다. 1-1. 입력된 수가 짝수라면 2 programmers.co.kr 나의 풀이 function solution(num) { let repeatCount = 0; while(num !== 1) { if (repeatCount === 500) { repeatCount = -1; break; } if (!(num % 2)) { num = num / 2; repeatCount += 1; continue; ..

IT/Algorithm 2021.10.21

프로그래머스) 약수의 개수와 덧셈

https://programmers.co.kr/learn/courses/30/lessons/77884 코딩테스트 연습 - 약수의 개수와 덧셈 두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주 programmers.co.kr 나의 풀이 function isOddOrEven(num) { let divisorCount = 0; for (let i = 1; i

IT/Algorithm 2021.10.20

프로그래머스) 나머지가 1이 되는 수 찾기

https://programmers.co.kr/learn/courses/30/lessons/87389 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 나의 풀이 function solution(n) { const divideList = []; for (let i = n - 1; i > 0; i--) { if ((n % i) === 1) { divideList.push(i); } } return divideList.pop(); } 약수를 리스트에 저장하고, 반복문이..

IT/Algorithm 2021.10.19

프로그래머스) 소수 만들기

https://programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 나의 풀이 function solution(nums) { const combiList = []; for (let i = 0; i < nums.length; i++) { for (let j = 0; j < nums.length; j++) { for (let k = 0; k < nums.length; k++) { if (!combiList.inc..

IT/Algorithm 2021.10.19

프로그래머스) 부족한 금액 계산하기

https://programmers.co.kr/learn/courses/30/lessons/82612 코딩테스트 연습 - 1주차_부족한 금액 계산하기 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이 programmers.co.kr 나의 풀이 function solution(price, money, count) { let needMoney = 0; while (count) { needMoney += price * count; count -= 1; } return needMoney - money > 0 ? needMoney - money : 0 ; } coun..

IT/Algorithm 2021.10.15

프로그래머스) 예산

https://programmers.co.kr/learn/courses/30/lessons/12982 코딩테스트 연습 - 예산 S사에서는 각 부서에 필요한 물품을 지원해 주기 위해 부서별로 물품을 구매하는데 필요한 금액을 조사했습니다. 그러나, 전체 예산이 정해져 있기 때문에 모든 부서의 물품을 구매해 줄 수는 programmers.co.kr 나의 풀이 시간 효율성을 고려해 for문을 사용하였다. 길이가 1인 배열 d를 고려해 조건문을 활용하여 early return 하였다. function solution(d, budget) { let answer; if (d.length === 1) { return answer = d[0] a - b); for (let i = 0; i < d.length; i++) ..

IT/Algorithm 2021.10.14

프로그래머스) 복서 정렬하기

https://programmers.co.kr/learn/courses/30/lessons/85002 코딩테스트 연습 - 6주차_복서 정렬하기 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr 나의 풀이 function solution(weights, head2head) { const objList = []; const answer = []; head2head.forEach(function (strScore, strIndex) { let winMoreWeight = 0; let obj = {}; strSc..

IT/Algorithm 2021.10.13
반응형