본문 바로가기

전체 글

(167)
[프로그래머스] 표 병합 - 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..
[프로그래머스] 숫자 문자열과 영단어 (JS) - replaceAll 문제 https://school.programmers.co.kr/learn/courses/30/lessons/81301 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 내 풀이 function solution(s) { const dic = { 'zero':'0', 'one':'1', 'two':'2', 'three':'3', 'four':'4', 'five':'5', 'six':'6', 'seven':'7', 'eight':'8', 'nine':'9' } let temp = '' let answer = '' for(i of s){ if(!('0'
[프로그래머스] 거리두기 확인하기 (JS) - DFS, 2차원 배열 잘 선언하기 문제 https://school.programmers.co.kr/learn/courses/30/lessons/81302# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 코드 function solution(places) { const answer = []; const dy=[1,0,-1,0]; const dx=[0,1,0,-1]; for(place of places){ let isGood=1; const isVisited = Array.from(Array(5), () => Array(5).fill(false)) for(let i=0; i