알고리즘

    [프로그래머스] 주차요금 계산 (2022 KAKAO BLIND RECRUITMENT)

    주차요금 계산 https://programmers.co.kr/learn/courses/30/lessons/92341?language=javascript 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 풀이 function solution(fees, records) { const getTimeByMinute = time => { if(..

    [프로그래머스] 호텔 방 배정 (2019 카카오 겨울 인턴십) / JavaScript

    호텔 방 배정 https://programmers.co.kr/learn/courses/30/lessons/64063 코딩테스트 연습 - 호텔 방 배정 programmers.co.kr 풀이 function solution(k, room_number) { const rooms = new Map(); const assignRooms = (num) => { if (!rooms.has(num)) { // 아직 배정받지 않은 방이라면, 다음 번호의 방을 담아준다. rooms.set(num, num + 1); return num; } // 이미 배정 받은 방이라면, 가리키고 있는 방이 배정 받았는지 확인한다. const nearestRoom = assignRooms(rooms.get(num)); rooms.set(n..

    [프로그래머스] 광고 삽입 ( 2021 Kakao Recruitment)

    광고 삽입 https://programmers.co.kr/learn/courses/30/lessons/72414 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 풀이 function solution(play_time, adv_time, logs) { // 시간 변경 함수 const addZero = (time) => parseInt(time).toString().padStart(2, "0"); const convertToHHMMSS = (..

    [프로그래머스] 디스크 컨트롤러 / JavaScript

    디스크 컨트롤러 https://programmers.co.kr/learn/courses/30/lessons/42627 코딩테스트 연습 - 디스크 컨트롤러 하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를 programmers.co.kr 풀이 function solution(jobs) { let totalTime = 0; let currentTime = 0; let waitingRoom = []; //priority queue const scheduling = () => { if (!waitingRoom.length) return false; const [inputTime,..

    [프로그래머스] 교점에 별 만들기 /JavaScript

    교점에 별 만들기 https://programmers.co.kr/learn/courses/30/lessons/87377 코딩테스트 연습 - 10주차_교점에 별 만들기 [[2, -1, 4], [-2, -1, 4], [0, -1, 1], [5, -8, -12], [5, 8, 12]] ["....*....", ".........", ".........", "*.......*", ".........", ".........", ".........", ".........", "*.......*"] [[0, 1, -1], [1, 0, -1], [1, 0, 1]] ["*.*"] [[1, -1, 0], [2, -1, 0], [4, - programmers.co.kr 참고 사항 Ax + By + E = 0Cx + Dy +..

    [프로그래머스] 거리두기 확인하기 (2021 카카오 인턴십) / JavaScript

    거리두기 확인하기 https://programmers.co.kr/learn/courses/30/lessons/81302 코딩테스트 연습 - 거리두기 확인하기 [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr 문제 설명 개발자를 희망하는 죠르디가 카카오에 면접을 보러 왔습니다. 코..

    [프로그래머스] 숫자 문자열과 영단어 ( 2021 카카오 인턴십) / JavaScript

    숫자 문자열과 영단어 https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 문제 설명 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1..