각 경로마다 라우팅을 분리하면 좋을 것 같아서 체계적으로 라우팅을 분리하고자 합니다. 먼저 기존 ./routes/index.js 의 내용을 바꿉니다. import express from "express"; const router = express.Router(); router.get("/", (req, res) => { res.render("home"); }); export default router; 이후에 메인 파일에서 아래와 같이 작성합니다. import indexRouter from "./routes/index.js"; ... app.use("/", indexRouter); 이제 /의 경로는 모두 index.js 파일에 있는 경로를 따르게 됩니다. 다음에는 HTML 기본 구조를 작성하겠습니다.
전체 글
import { Dream } from "future";데이터 베이스 서버의 데이터를 저장하기 위해서 데이터 베이스를 연결하여 관리하도록 합니다. 데이터베이스 중에서 일단 관계형 데이터 베이스를 사용할 예정이라서 RDBMS 툴을 사용하도록 하겠습니다. RDBMS 에는 MySQL, MsSQL, Oracle, PostgreSQL, MariaDB 등이 있지만, MySQL과 PostgreSQL이 가장 사용자가 많습니다. 둘 중 어떤 것을 고를지 고민이 됐었는데, Stackoverflow survey 2022에서 Loved vs Dreaded 중 1등, want에서도 1등이었기 때문에 PostgreSQL을 공부하도록 하겠습니다. 데이터베이스 적용 1. 설치 npm i pg 2. 메인 파일 작성 여러 가지 적용 방법이 있겠지만, 공식문서를 따라가는 것이 좋다고 생각하여..
📌 문제 LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. 📌 입력 첫째 줄과 둘째 줄에 두 문자열이 주어진다. 문자열은 알파벳 대문자로만 이루어져 있으며, 최대 1000글자로 이루어져 있다. 📌 출력 첫째 줄에 입력으로 주어진 두 문자열의 LCS의 길이를, 둘째 줄에 LCS를 출력한다. LCS가 여러 가지인 경우에는 아무거나 출력하고, LCS의 길이가 0인 경우에는 둘째 줄을 출력하지 않는다. 📌 문제 풀이 👨🏫 접근 9251 LCS 문제의 확장판. 개수를 세면서 문자를 추가해주면 된다. 👨🏫 문제 풀이 📄 ..
📌 문제 LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. 📌 입력 첫째 줄과 둘째 줄에 두 문자열이 주어진다. 문자열은 알파벳 대문자로만 이루어져 있으며, 최대 1000글자로 이루어져 있다. 📌 출력 첫째 줄에 입력으로 주어진 두 문자열의 LCS의 길이를 출력한다. 📌 문제 풀이 👨🏫 접근 처음에는 이 문제를 다이나믹 프로그래밍으로 풀 수 있나 싶었다. 각 문자열에서 가능한 최대 문자열의 길이를 저장하고 그 데이터를 활용함으로써 풀어야 하지만, 쉬워보이지 않았기 때문이다. 문제를 풀어냈을 때는 꽤 간단한 로직이..