프로그래머스 (108) 썸네일형 리스트형 [투포인터] 프로그래머스 '보석 쇼핑' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 처음 푼 코드) 타임아웃. 또 예상했던 것. gems 길이가 길어지면 완탐으로는 시간이 오래걸릴 것 같다고 생각했다. function solution(gems) { let set = [...new Set(gems)]; // 보석 종류 let visited = new Array(set.size).fill(0); let candidate = []; let answer = []; .. [투포인터] 프로그래머스 '두 큐 합 같게 만들기' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/118667#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 처음 푼 코드) 당연한 타임아웃 function solution(queue1, queue2) { let answer = 0; // 두 큐 요소 합 구하기 // 두 큐 중 합 큰 것에서 하나 빼서 옮기기 queue1 = queue1.reverse(); queue2 = queue2.reverse(); let sum1 = queue1.reduce((acc,cur) => a.. [구현] 프로그래머스 '메뉴 리뉴얼' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 function solution(orders, course) { let map = new Map(); // 해시 맵에 조합 및 해당 조합이 나온 갯수 저장 let set = new Set(); // 각 orders 요소에 대한 조합 만들 때 중복 제거 let best = new Array(course.length).fill(0); // 조합 길이 별 조합 갯수 최댓값 저장 l.. [구현] 프로그래머스 '불량 사용자' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/64064 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 function solution(user_id, banned_id) { const ch = new Array(user_id.length).fill(0); const set = new Set(); const isPossible = (uId, bId) => { if (uId.length !== bId.length) return false; for (let i = 0; i < uI.. [스택] 프로그래머스 '택배상자' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131704# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 function solution(order) { let answer = 0; let main = order.reverse(); // pop이 shift 보다 시간 덜 소요 되므로 주문 역순 let left = order.map((el,idx) => idx+1).reverse(); // 컨테이너 벨트 역순 let sub = []; // 보조 컨테이너(stack) while(.. [구현] 프로그래머스 '124 나라의 숫자' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/12899 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 이 문제를 처음 읽었을 때는 감이 잘 오지 않았다. 알고보니 1,2,4 이 세 개의 숫자를 쓴다는 것은 이 문제를 3진법으로 풀어야한다는걸 떠올려야 했다. 문제는 매우 쉬웠지만, 풀이를 생각하기가 어려운 문제인 것 같다. 정답) function solution(n) { let answer = ''; // 3진법 사용. 3과 나누어 떨어졌을 때 나머지를 0이 아닌 4로 본다고 .. [구현] 프로그래머스 '삼각 달팽이' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/68645 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 구현 function solution(n) { let answer = []; let count = 0; let arr = Array.from({ length: n }, (el, idx) => Array(idx + 1).fill(0)); let currentX = -1; // 상하 let currentY = 0; // 좌우 while (n > 0) { // n의 값이 유효할 때까지 .. [해시] 프로그래머스 '롤케이크 자르기' - js 1. 문제 https://school.programmers.co.kr/learn/courses/30/lessons/132265 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 코드 처음 푼 코드) Set을 사용하여 모든 경우를 비교하는 간단한 풀이라 당연히 시간초과가 날 것을 예상했다.. 그래도 항상 완탐을 제일 먼저 시도해보아야하니 시간초과를 예상했어도 한 번 작성해보았다. function solution(topping) { let answer = 0; const check = (arr1,arr2) => { let set1 = new Set(); l.. 이전 1 2 3 4 5 ··· 14 다음