본문 바로가기

JS20

Javascript에서 인접리스트 구현하기 1. 배열 사용function createAdjacencyList(edges, nodeCount) { const adjacencyList = Array.from({ length: nodeCount + 1 }, () => []); for (const [u, v] of edges) { adjacencyList[u].push(v); adjacencyList[v].push(u); } return adjacencyList;}// 입력값const nodeCount = 6;const edgeList = [ [1, 2], [2, 5], [5, 1], [3, 4], [4, 6]];// 인접 리스트 생성const adjacencyList = createAdjacencyList(edgeList, .. 2025. 3. 6.
[백준] 1158번 : 요세푸스 문제 (실버 4) - Javascript 풀이 문제 링크https://www.acmicpc.net/problem/1158 풀이const fs = require('node:fs');const input = fs.readFileSync('예제.txt','utf8').split(' '); // 백준 경로:'/dev/stdin'const [n, k] = input.map(Number);const circle = [];const result = [];for(let i=1;i0){ remove = (remove + k-1) % circle.length; result.push(circle.splice(remove,1)[0]);}console.log(``); 2025. 2. 11.
[백준] 2164번: 카드2 (실버4) - Javascript 풀이 백준에서 자바스크립트를 사용해서 문제를 푸는 방법은 아래 블로그를 참고했다.https://nyang-in.tistory.com/156 [백준]백준에서 node.js 입출력 방법 정리(백준/자바스크립트/코딩테스트/알고리즘)안녕하세요. 이번 시간에는 백준에서 node.js 입출력 방법에 대해 알아보겠습니다. 자바스크립트로 코딩테스트를 준비할 경우, 백준에서는 node.js를 선택하여야 합니다. 그런데 node.js가 좀 번거롭nyang-in.tistory.com 여기서 내 VSCode는 fs를 불러올 때A Node.js builtin module should be imported with the node: protocol 오류가 발생했다.내 VSCode에서 코드 검사 도구(ESLint, Biome 등)를 사.. 2025. 2. 9.
[프로그래머스] Lv 2. 올바른 괄호 - Javascript 풀이 💡 유형: 스택/큐 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/12909 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 구현 및 풀이1. 첫 문자가 '('이면, 남은 문자열 중 ')'가 있는지 확인한다. 따라서 '('를 제거하고 남은 문자열을 확인한다.2. 있으면 그 문자')' 도 제거한다. 3. 모든 문자가 제거되면 true를 리턴한다.4. 문자가 남아있으면 false를 리턴한다. ➡️ 정확성: 통과 / 효율성: 실패 (시간초과)function solution(s) { const arr = [...s]; while.. 2025. 2. 7.
[프로그래머스] Lv 2. 기능 개발 - Javascript 풀이 💡 유형: 스택/큐 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42586 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 구현- 각 기능의 개발속도는 모두 다르다.- 뒤에 있는 기능은 앞에 있는 기능이 배포될 때 함께 배포된다.- progresses: 먼저 배포되어야 하는 순서대로 작업의 진도가 적힌 정수 배열- speeds: 각 작업의 개발 속도가 적힌 정수 배열- 구하는 것: 각 배포마다 몇 개의 기능이 배포되는지 1. 각 작업마다 100%까지 작업량을 구하여 큐(days)에 삽입한다.2. 첫 번째 작업이 완료될 때, 같이 배포할.. 2025. 2. 5.
[프로그래머스] Lv 2. 게임 맵 최단 거리 - Javascript 풀이 💡 유형: DFS/BFS문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/1844구현상대 팀 진영에 빠르게 도착하는 방법 = 최단 거리 구하기 = BFS- 상하좌우로 이동 가능, 벽이 있는 자리(0)로는 이동 불가능- 게임 맵 좌측 상단인 (1,1) -> 배열 인덱스로 표현하면(0,0)에서 시작, 상대방은 게임 맵 우측 하단(n,m)-> 배열 인덱스로 표현하면 (n-1, m-1) 에 있음- 벽에 가로막혀 상대 팀 진영에 도착할 수 없을 때는 -1 return 1. queue를 활용하여 (0,0)부터 탐색을 시작한다. dist를 통해 이동거리를 저장한다.2. 상,하,좌,우를 확인하고, 1이라면 queue에 넣는다. (dist+1)3. 방문한 .. 2025. 2. 4.