본문 바로가기

Programmers

(24)
[프로그래머스] 게임 맵 최단거리 (JS) - DFS/BFS 문제 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 DFS 풀이 (효율성 테스트 실패) function solution(maps) { const n = maps.length; const m = maps[0].length; const dy = [0, 1, 0, -1]; const dx = [1, 0, -1, 0]; let answer = -1; const isVisited = Array(n) .fill(false) .map(() => Arr..
[프로그래머스] 불량 사용자 (JS) - DFS 문제 https://school.programmers.co.kr/learn/courses/30/lessons/64064 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 내 풀이 function solution(user_id, banned_id) { const isVisited = Array.from({length:user_id.length}, ()=>false); const arr = []; let realArr = [] dfs(0) function dfs(idx){ if(idx===banned_id.length){ realArr.push([...ar..
[프로그래머스] 표 병합 - union find 문제 https://school.programmers.co.kr/learn/courses/30/lessons/150366 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(commands) { const answer = []; const LENGTH = 51; const arr = Array.from({length:LENGTH}, ()=>Array(LENGTH).fill('')); const groups = Array(LENGTH).fill().map((_,i) => Array(LENGTH).fill().map((_,j)..
[프로그래머스] 수식 최대화 (JS) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 내 풀이 function solution(expression) { const nums = []; const operator = []; let temp=''; for (e of expression){ if(e==='-'||e==='+'||e==='*'){ nums.push(Number(temp)); temp='' operator.push(e) }else{ temp+=e } } nums.p..
[프로그래머스] 튜플 (JS) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 내 풀이 function solution(s) { const answer = []; s=s.replaceAll('{','[').replaceAll('}',']'); const parsed = JSON.parse(s); parsed.sort((a,b)=>a.length-b.length); for(let i=0; i { const idx = arr.indexOf(item); if(idx!=..
[프로그래머스] 보석 쇼핑 (JS) - Map, 투포인터 문제 https://school.programmers.co.kr/learn/courses/30/lessons/67258 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 첫번째 시도 (시간초과) function solution(gems) { let answer = [1,gems.length]; const minGemsNum = new Set(gems).size; for(let i=0; ir-l) answer=[l+1,r+1]; gemMap.set(gems[l], gemMap.get(gems[l])-1); if(gemMap.get(gems[l])===0)..
[프로그래머스] 키패드 누르기 (JS) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/67256 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(numbers, hand) { let answer = ''; const keypadPos = [[3,1],[0,0],[0,1],[0,2],[1,0],[1,1],[1,2],[2,0],[2,1],[2,2]]; let lPos =[3,0]; let rPos =[3,2]; for(num of numbers){ if(num===1||num===4||num===7)..
[프로그래머스] 표 편집 (JS) - 연결리스트 문제 https://school.programmers.co.kr/learn/courses/30/lessons/81303 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 배열 풀이(시간초과) function solution(n, k, cmd) { const table=[]; const stack=[]; let answer=""; for(let i=0; i"O"); const node = Array.from({length:n}, (_, idx) => new Node(idx, idx-1=n?null:idx+1)); const stack = []; for(c..