본문 바로가기

자료구조&알고리즘17

[코드트리 챌린지] 8주차 - DFS / 안전 지대 (JS) 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/comfort-zone?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"; let input = fs.readFileSync(filePath).toString().trim().split("\n"); const [n, m] = input.shift().split(" ").map(Number); input = input.map((e) => e.split(" ").map(Num.. 2023. 10. 30.
[코드트리 챌린지] 7주차 - BFS 탐색 / 돌 잘 치우기 (JS) 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/clear-stones-well?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"; let input = fs.readFileSync(filePath).toString().trim().split("\n"); const [n, k, m] = input.shift().split(" ").map(Number); const grid = input.slice(0, n).map((e.. 2023. 10. 23.
[코드트리 챌린지] 6주차 - 삼성기출 / 외주 수익 최대화하기 (JS) 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/training-field/frequent-problems/problems/max-of-outsourcing-profit?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"; let input = fs.readFileSync(filePath).toString().trim().split("\n"); const n = +input.shift(); input = input.map((e) => e.split(" ").. 2023. 10. 16.
[코드트리 챌린지] 5주차 - BFS 탐색 / K번 최댓값으로 이동하기 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/move-to-max-k-times?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"; const input = fs.readFileSync(filePath).toString().trim().split("\n"); const [n, k] = input.slice(0, 1)[0].split(" ").map(Number); const grid = input.slice(1, 1.. 2023. 10. 9.
[코드트리 챌린지] 4주차 - DFS / 뿌요뿌요 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/puyo-puyo?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./input.txt"; let input = fs.readFileSync(filePath).toString().trim().split("\n"); const n = +input.shift(); input = input.map((e) => e.split(" ").map(Number)); const dx = [0, 1, 0, -1.. 2023. 10. 9.
[코드트리 챌린지] 3주차 - K개 중 하나를 N번 선택하기(Simple) / 아름다운 수 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/beautiful-number?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require('fs') let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n') let answer = 0; const n = +input[0]; const number = []; const isBeutiful = (num) => { for (let i = 0; i < n; ) { let checkNum = num[i]; let count = num[i]; while (count) .. 2023. 9. 25.
[코드트리 챌린지] 2주차 - (DP)정수 사각형 최대 합 (JS) 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/missions/2/problems/maximum-sum-path-in-square?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require('fs') let input = fs.readFileSync('/dev/stdin').toString().trim().split('\n') const n = +input.shift() input = input.map(e => e.split(' ').map(Number)) const dp = Array.from({length : n }, () => Array.from({length: n}, () => 0)); function.. 2023. 9. 18.
[코드트리 챌린지] 2주차 - 문자에 따른 명령2 (JS) 1. 진단 결과 2. 학습 내용 문제 https://www.codetree.ai/landing/level-test/5535/result/4?&utm_source=clipboard&utm_medium=text 나의 풀이 (JS) const fs = require('fs') const input = fs.readFileSync('/dev/stdin').toString().trim().split('\n') const dx = [0, -1, 0, 1] const dy = [1, 0, -1, 0] let dir = 0; let x = 0; y = 0; for(let i = 0; i < input[0].length; i++) { let cmd = input[0][i]; if(cmd === 'F') { x += dx.. 2023. 9. 13.
프로그래머스 Lv.2 올바른 괄호 (스택/큐) (JavaScript) 자바스크립트로 프로그래머스 문제 풀기 문제 - 출처: https://school.programmers.co.kr/learn/courses/30/lessons/12909 괄호의 짝이 올바르게 지어졌는지 확인하는 문제로, 스택/큐 관련 문제이다. 풀이 나의 풀이 function solution(s){ var answer = true; let tmp = []; //임시배열 생성 let mark1 = 0, mark2 = 0; //'(' 수와 ')' 수를 카운팅 if(s.length % 2 != 0) answer = false; //길이가 홀수이면 무조건 false for(let i = 0; i < s.length; i++) { if(s[i] == '(') { tmp.push(s[i]); //'(' 는 무조건 t.. 2022. 9. 18.