백준[node.js] > 9251번 LCS
·
🔒Algorithm
문제https://www.acmicpc.net/problem/9251내풀이LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다.이 문제는 유명한 문제라고 하는데 처음에 어떻게 접근할 지 몰라 다른사람들의 풀이를 참고하였다.간단하게 ACAYKPCAPCAK두문자의 LCS를 찾으려면 아래와 같은 2 차원 배열을 만들고 채워서 가장 큰 수를 확인하면 된다.       A  C  A  Y  K  P     C   A   P   C   A  K    이렇게 2차원 배열을 만들고 채우면 된다. 위 2차원배열을 dp라고 칭하면 dp[0][3] 은 문자열 C와 문자열 ACAY 의 LCS길이로 채워진다...
백준[node.js] > 16953번 A->B
·
🔒Algorithm
문제링크https://www.acmicpc.net/problem/16953풀이최소 연산 횟수를 구하는 작업이기 때문에 dfs 보단 bfs로 푸는게 더 좋은 방법이다.let fs = require("fs");let input = fs.readFileSync("/dev/stdin").toString();let [start, target] = input.split(" ").map((n) => Number(n));let arr = [[start, 1]];let answer = undefined;while (arr.length) { let [num, cnt] = arr.shift(); if (num === target) { answer = cnt; break; } l..