본문 바로가기
  • 개발 / 공부 / 일상

전체 글207

(Programmers) [Lv.2] 124 나라의 숫자 문제 설명 124 나라가 있습니다. 124 나라에서는 10진법이 아닌 다음과 같은 자신들만의 규칙으로 수를 표현합니다. 124 나라에는 자연수만 존재합니다. 124 나라에는 모든 수를 표현할 때 1, 2, 4만 사용합니다. 예를 들어서 124 나라에서 사용하는 숫자는 다음과 같이 변환됩니다. 10진법 124나라 10진법 124나라 1 1 6 14 2 2 7 21 3 4 8 22 4 11 9 24 5 12 10 41 자연수 n이 매개변수로 주어질 때, n을 124 나라에서 사용하는 숫자로 바꾼 값을 return 하도록 solution 함수를 완성해 주세요. 문제 제한사항 n은 50,000,000 이하의 자연수입니다. 입출력 예시 해결방안 처음에 문제를 보고 난 후에 3진법을 생각하였다. 그리곤 규칙성을 찾.. 2023. 1. 25.
(Programmers) [Lv.2] 하노이의 탑 문제 설명 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대로 쌓여 있습니다. 게임의 목적은 다음 두 가지 조건을 만족시키면서, 한 기둥에 꽂힌 원판들을 그 순서 그대로 다른 기둥으로 옮겨서 다시 쌓는 것입니다. 한 번에 하나의 원판만 옮길 수 있습니다. 큰 원판이 작은 원판 위에 있어서는 안 됩니다. 하노이 탑의 세 개의 기둥을 왼쪽부터 1번, 2번, 3번이라고 하겠습니다. 1번에는 n개의 원판이 있고 이 n개의 원판을 3번 원판으로 최소 횟수로 옮기려고 합니다. 1번 기둥에 있는 원판의 개수 n이 매개변수로 주어질 때, n개의 원판을 3번 원판으로.. 2023. 1. 25.
(Programmers) [Lv.0] 옹알이(1) 문제 설명 머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return 하도록 solution 함수를 완성해 주세요. 문제 제약 사항 1 ≤ babbling의 길이 ≤ 100 1 ≤ babbling[i]의 길이 ≤ 15 babbling의 각 문자열에서 "aya", "ye", "woo", "ma"는 각각 최대 한 번씩만 등장합니다. 즉, 각 문자열의 가능한 모든 부분 문자열 중에서 "aya", "ye", "woo", "ma"가 한 번씩만 등장합니다. 문자열은 알파.. 2023. 1. 25.
(Node.js) multer multer 라이브러리 express 서버에서 파일을 업로드하기 위한 미들웨어이다 HTML에서 form데이터를 처리하여 클라이언트에서 서버로 파일을 업로드할 수 있다 multer.diskStorage({}) POST 방식으로 전송된 파일의 저장경로와 파일명 등 처리하기 위해서 diskStorage 엔진이 필요하다 multer.diskStorage({ destination }) : 파일 등을 저장할 경로 설정 multer.diskStorage({ filename }) : 파일 이름을 설정 const multer = require("multer"); const storage = multer.diskStorage({ destination: (req, file, cb) => { cb(null, "./upload.. 2023. 1. 18.
(Node.js) jwt jwt JsonWebToken 웹에서 사용하는 JSON 형식의 토큰 (짧은 데이터) JSON은 일종의 데이터 형식 JWT : header + payload + signature header : JWT의 검증을 위한 데이터가 저장 payload : JWT가 갖고 있는 데이터 발급자(개발자)가 저장하고 싶은 데이터, 주고받아야 할 데이터, 로그인 후의 그 이용자의 닉네임, 암호화된 토큰 등등 signature : 암호화된 서명 검증에 사용 header const tempHeader = JSON.stringify({ name: "block7", alg: "HS512" }); // stringify : 객체를 JSON 형식으로 변환 // alg : 어떠한 알고리즘을 사용하는지 const base64Header .. 2023. 1. 18.
(Node.js) fs fs FileSystem의 약자로 파일 처리와 관련된 라이브러리 fs 내장 모든 메서드들은 동기 / 비동기 형식을 구분할 수 있다 const fs = require("fs"); const path = require("path"); console.log("dirname : " + path.dirname(__filename)); console.log("extname : " + path.extname(__filename)); console.log("basename : " + path.basename(__filename)); console.log(path.join(__dirname, "..", "..")); fs.writeFile("./test.txt", "아뇽하세요", (data) => { console.lo.. 2023. 1. 17.