본문 바로가기

[개발] 코딩테스트/프로그래머스16

[프로그래머스] 체육복 / Javascript [문제 바로가기] 탐욕법 > 체육복 (Lv.1) [ 문제 파악 ] 뇌로는 풀리나.. 구현하기가 어렵다 ㅠ [ 적용한 풀이 ] function solution(numbers) { } [해결 과정 중 실수한 부분 / 잡담] 왜 ? 왜 때문에 체육복을 여분으로 가지고 있는 친구들이 도난당했을꺼라고는 생각하지 않았을까 ㅠㅠ 처음에 테스트 케이스 돌릴때는 너무 빠르게 통과해서 어? 이렇게 쉬운건가?했는데 아니나 다를까 제출하려고 하니 뭔가 빠진게 있었다. 그렇다.. 여분으로 가지고 있는 친구들이 도난당했을꺼라고는 상상도 못했다;; 삽질하다가 결국 시간초과로 구글링해봤을때 확인했더니 '아!?'하고 이해해버렸다 ㅠㅠ 대충 파악만하고 스스로 코드를 짜보려는 중이다. 2022. 4. 27.
[프로그래머스] 모의고사 /Javascript [문제 바로가기] 완전탐색 > 모의고사 (Lv.1) [ 문제 파악 ] 완전탐색 문제 [ 적용한 풀이 ] function solution(answers) { // 문제 이렇게 슬플일이냐 ㅠㅠ const 수포자들 = [[1, 2, 3, 4, 5], [2, 1, 2, 3, 2, 4, 2, 5], [3, 3, 1, 1, 2, 2, 4, 4, 5, 5]]; let count = Array(3).fill(0); 수포자들.map((수포자, index)=>{ let 묶음 = Math.ceil(answers.length/수포자.length); //올림 for(let 묶 = 0; 묶 { if(찍음 == answers[수포자.length*묶+idx]) count[ind.. 2022. 4. 23.
[프로그래머스] K번째수 / Javascript [문제 바로가기] 정렬 > K번째수 (Lv.1) [ 문제 파악 ] 1. 주어진 수를 가지고 2. 배열을 자르고 + 오름차순(중요) 정렬후 //slice(start, end), sort({ compareFunction(a,b) }) 3. 정렬한 배열에서 하나 뽑아내기 [ 적용한 풀이 ] function solution(array, commands) { var answer = []; answer = commands.map(command =>{ let first = command[0]-1; let last = command[1]; let pick = command[2]-1; // if (first === last) last+= 1 let result = array.slice(first, last).sort(f.. 2022. 4. 21.
[프로그래머스]소수 만들기 / Javascript [문제 바로가기] Summer/Winter Coding(~2018) > 소수만들기 (Lv.1) [ 문제 파악 ] 배열 중 3개의 수를 골라 더한 수가 소수인지 파악 소수인 수들의 개수를 출력하는 문제 1. 3수를 더하는 함수 2. 소수인지 아닌지 판단하는 함수 2-1. 소수일때마다 개수는 +1씩해줌 [ 적용한 풀이 ] function solution(nums) { let answer = 0; for (let i = 0; i < nums.length; i++) { for (let j = i + 1; j < nums.length; j++) { for (let k = j + 1; k < nums.length; k++) { let sumNum = nums[i] + nums[j] + nums[k]; if (min.. 2022. 4. 20.
[프로그래머스] 문자열 압축 / Javascript [문제 바로가기] 2020 KAKAO BLIND RECRUITMENT > 문자열 압축 (Lv.2) [ 문제 파악 ] 반복되는 문자열이 있으면 압축하기 ! 아직 풀고 있다 ㅠ 레벨 2로 오니 조금 더 어렵다. 내일 다시 해보기 ! [ 적용한 풀이 ] function solution(numbers) { } [해결 과정 중 실수한 부분 / 잡담] [관련 문제 혹은 비슷한 문제] 2022. 4. 16.
[프로그래머스] 없는 숫자 더하기 / Javascript [문제 바로가기] 연습월간 코드 챌린지 시즌3 > 없는 숫자 더하기 (Lv.1) [ 문제 파악 ] 핵심 : 배열에서 없는 수만 더해서 return 하기 ! [ 적용한 풀이 ] 1. 배열 자체가 가지는 index를 사용 2. indexOf(값)의 결과값이 0이하인 것만 answer에 더하기 function solution(numbers) { let answer = 0; for(let i = 0; i < 10; i++){ if(numbers.sort().indexOf(i) < 0){ answer +=i } } return answer } sort()가 필요한가 싶어서 적용했었는데, 풀이 제출할때 성능체크해보니 그렇게 큰 차이는 나지 않았다. (오히려 적용 안한 쪽이 균일하게 처리하는 것으로 보인다) [해결 .. 2022. 4. 15.