본문 바로가기

💻JavaScript/코딩테스트63

timeout function 문제 설명 제한 시간 내에 Promise가 완료되면 resolve, 아니면 "timeout"으로 reject하는 timeOut 함수를 만드세요.  제한 조건timeOut 함수는 첫 번째 인자로 받은 Promise가, 두 번째 인자로 받은 시간(s)안에 끝나지 않으면 "timeout"을 reject하는 Promise를 반환해야 합니다.Promise.race를 사용하세요.  📄 문제async function timeOut(promise, ms) {} 💻 작성한 코드async function timeOut(promise, ms) { return Promise.race([ promise, new Promise((_, reject) => setTimeout(() => reject("timeout".. 2025. 2. 5.
행렬 뒤집기(rotate a matrix) 문제 설명 rotateMatrix 함수는 N x N 형태의 2차연 배열(matrix)을 90도 시계방향으로 회전한 새로운 배열을 반환해야 합니다.  제한 조건 원본 배열(matrix)을 변경하지 않아야 합니다.이중 반복문을 사용하고, 회전 규칙을 적용하세요. tip: matrix[i][j]는 rotated[j][n-1-i]가 됩니다.  📄 문제//TODO: 2차원 배열을 90도 회전한 새로운 배열을 반환하는 함수를 작성하세요.function rotateMatrix(matrix) {}  💻 작성한 코드function rotateMatrix(matrix) { const n = matrix.length; // 배열의 크기 const rotated = Array.from({ length: n }, () .. 2025. 2. 4.
그룹으로 객체 나누기 문제 설명const data = [ { name: 'Alice', group: 'A' }, { name: 'Bob', group: 'B' }, { name: 'Charlie', group: 'A' }];groupBy(data, 'group') => { A: [ { name: 'Alice', group: 'A' }, { name: 'Charlie', group: 'A' } ], B: [ { name: 'Bob', group: 'B' } ]}객체 배열(arr)과 프로퍼티 이름(key)을 받아옵니다.해당 key의 값에 따라 객체를 묶어 { keyValue: Object[] } 형태로 반환하세요.  제한 조건reduce 메서드를 사용하세.. 2025. 1. 31.
2016년(Twenty Sixteen) 문제 설명 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요.요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT 입니다.예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 "TUE"를 반환하세요.  제한 조건 2016년은 윤년입니다.2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다)  📄 문제function solution(a, b) { var answer = ''; return answer;}  💻 내가 쓴 코드function solution(.. 2025. 1. 19.
명예의 전당(Hall of Fame) 문제 설명 "명예의 전당"이라는 TV 프로그램에서는 매일 1명의 가수가 노래를 부르고, 시청자들의 문자 투표수로 가수에게 점수를 부여합니다. 매일 출연한 가수의 점수가 지금까지 출연 가수들의 점수 중 상위 k번째 이내이면 해당 가수의 점수를 명예의 전당이라는 목록에 올려 기념합니다. 즉 프로그램 시작 이후 초기에 k일까지는 모든 출연 가수의 점수가 명예의 전당에 오르게 됩니다. k일 다음부터는 출연 가수의 점수가 기존의 명예의 전당 목록의 k번째 순위의 가수 점수보다 더 높으면, 출연 가수의 점수가 명예의 전당에 오르게 되고 기존의 k번째 순위의 점수는 명예의 전당에서 내려오게 됩니다.이 프로그램에서는 매일 "명예의 전당"의 최하위 점수를 발표합니다. 예를 들어, k = 3이고, 7일 동안 진행된 가수의.. 2025. 1. 18.
콜라 문제(The Cola Exchange Problem) 문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다.정답은 아무에게도 말하지 마세요.콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가?단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. 받은 1병과 5병을 받았을 때 남은 1병을 모두 마신 뒤 가져가면 1병을 또 받을 수 있습니다.. 2025. 1. 16.