본문 바로가기

Coding Test96

[Javascript] (구름 먼데이 챌린지) 1주차 1번 문제 [Javascript] (구름 먼데이 챌린지) 1주차 1번 문제 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solve() { const nums = lines[1].trim().split(' '); const answer = nums.reduce((acc, cur) => BigInt(+cur) * BigInt(acc), 1n).toString(); return answer; } 배운 점, 느낀 점 테스트 케이스 10번이 계속 안풀려서 한참을 고생했습니다. 결국 BigInt를 사용해서 풀었는데요, 해당 개념을 4개월전에 사용은 해봤지만 제대로 알지 못해서 한참을 고생했네요. 프로그래머스 문제를 풀때는 그냥 단순히 구현만 해도 .. 2022. 10. 14.
[Javascript] (프로그래머스 level 0) 외계행성의 나이 [Javascript] (프로그래머스 level 0) 외계행성의 나이 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(age) { const programmersAge = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']; return age.toString().split('').map((num) => programmersAge[num]).join(''); } 다른 사람 풀이 참고한 풀이 function solution.. 2022. 10. 14.
[Javascript] (프로그래머스 level 0) 중복된 문자 제거 [Javascript] (프로그래머스 level 0) 중복된 문자 제거 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(my_string) { const count = {}; return my_string.split('').filter((x) => { if (!count[x]) { count[x] = true; return x } }).join('') } js는 객체지! 하면서 객체 이용해서 풀었는데,,, 다른 사람 풀이 참고한 풀이 function solution(my_string) { return [...new Set(my_string)].join('') } set 구조로 중복 제거.. 2022. 10. 12.
[Javascript] (프로그래머스 level 0) 문자 반복 출력하기 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(my_string, n) { const answer = []; for (let i = 0; i 0) { answer.push(my_string[i]); } } return answer.join(''); } 다른 사람 풀이 참고한 풀이 function solution(my_string, n) { return my_string.split('').map((x) => x.repeat(n)).join(''); } String에는 repeat()이라는 메서드가 .. 2022. 10. 9.
[Javascript] (프로그래머스 level 0) 양꼬치 [Javascript] (프로그래머스 level 0) 양꼬치 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(n, k) { let lamb = 12000 * n; let services = Math.floor(n / 10); let drinks = k - services >= 0 ? (k - services) * 2000 : 0; let total = lamb + drinks; return total; } 헷갈려서 변수로 했는데 다른 사람 풀이는 다 그냥 연산 때려 넣었네요.. ㅎㅎ 다른 사람 풀이 참고한 풀이 function solution(n, k) { let lamb = 12000 * n; let services = ~~(.. 2022. 10. 9.
[Javascript] **(프로그래머스 level 0) 짝수는 싫어요** [Javascript] (프로그래머스 level 0) 짝수는 싫어요 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(n) { return Array.from({ length : Math.ceil(n / 2) }, (_, i) => (i * 2) + 1); } 배운 점, 느낀 점 Level 0 이라 쉽게 봤는데, Array.from 문법을 잘 몰라서 시간이 조금 걸렸다. 기초가 단단해야한다! 열심히 하자! 2022. 10. 7.
[Javascript] (프로그래머스 level 2) 카펫 [Javascript] (프로그래머스 level 2) 카펫 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(brown, yellow) { for (let i = 1; i 2022. 9. 30.
[Javascript] (프로그래머스 level 2) 올바른 괄호 [Javascript] (프로그래머스 level 2) 올바른 괄호 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(s){ let count = 0; for (let i = 0; i < s.length; i++) { if (s[i] === &#39;(&#39;) { count++; continue; } else if (s[i] === &#39;)&#39;) { count--; } if (count < 0) { return false } } return count === 0; } 스택 문제라는 걸 알고 있어서 push() pop()을 통해 풀었더니 “시간 초과”가 뜨네요.. 그래서 그냥 위 코드 처럼 count해서 ‘(’ 이면 ++.. 2022. 9. 29.
[Javascript] (프로그래머스) 짝지어 제거하기 (level 2) [Javascript] (프로그래머스) 짝지어 제거하기 (level 2) 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(s) { const stack = [&#39;&#39;]; for (let i = 0; i < s.length; i++) { let curIndex = stack.push(s[i]) - 1; if (stack[curIndex - 1] === stack[curIndex]) { stack.pop(); stack.pop(); } } return stack.length === 1 ? 1 : 0; } 투포인터로 돌리려고 코드를 짜고 있었습니다. 근데 갑자기 이게 도대체 뭐하는 짓이지… 라는 현타가 오면서 더 좋은 방법.. 2022. 9. 28.
[Javascript] (프로그래머스) 최솟값 구하기 (level 2) [Javascript] (프로그래머스) 최솟값 구하기 (level 2) 💡 구글에 Javascript 풀이가 많이 없거나, 배운 점이 있으면 포스팅합니다. 내 풀이 function solution(A,B){ A.sort((x,y) => y - x); B.sort((x,y) => x - y); let minMultiple = 0; A.forEach((a, i) => minMultiple += A[i] * B[i]); return minMultiple } 어떻게 해야 최솟값이 나올지 모르겠어서 설마 모든 경우의 수 다 돌리는건가? 생각을 했습니다. 역시나 수학적 해결방법이 있었습니다. ㅎㅎ 부족한 모습이 아쉽지만 하나씩 알아가는거겠죠? ㅎㅎ 최솟값과 최댓값을 곱하는 식으로 해서 곱해지는 숫자의 평균이 가장 .. 2022. 9. 27.