문제 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해 주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant completion return ["leo", "kiki"..
1. ESLint, Prettier Extension 설치 VS Code에서 ESLint, Prettier Extension을 설치한다. yarn add eslint prettier typescript --dev VSCode 터미널에서 위의 명령어를 입력해 타입스크립트 버전의 ESLint와 Prettier를 설치한다. 2. 플러그인 설치 yarn add @typescript-eslint/eslint-plugin @typescript-eslint/parser --dev eslint에서 TS를 활용하기 위한 플러그인을 설치한 후, yarn add eslint-config-prettier eslint-plugin-prettier --dev 위의 명령어를 입력해 ESLint와 Prettier를 함께 사용하기 위..
문제 알파벳 소문자, 대문자, 숫자 0-9중 하나가 주어졌을 때, 주어진 글자의 아스키 코드값을 출력하는 프로그램을 작성하시오. 입력 알파벳 소문자, 대문자, 숫자 0-9 중 하나가 첫째 줄에 주어진다. 출력 입력으로 주어진 글자의 아스키 코드 값을 출력한다. 입출력 예 input output A 65 z 122 내가 작성한 답안 const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().trim(); console.log(input.charCodeAt()); 아스키코드란? 아스키(ASCII)란 미국 국립 표준 협회에서 표준화한 정보 교환용 7비트 부호 체계로, 영문 알파벳을 사용하는 대표적인 문자 인코딩이다. 문자 인..
오류 발생 경로 React + TypeScript 프로젝트에 eslint, prettier를 적용하던 중 src 하위에 파일 경로가 제대로 있음에도 다음과 같은 에러가 발생했다. 오류 내역 Unable to resolve path to module 오류 원인 및 해결 방법 "settings": { "import/resolver": { "node": { "extensions": [".js", ".jsx", ".ts", ".tsx"] } } } .eslintrc.js 파일에 위와 같은 구문을 추가한다. 이후 .eslintrc.js 파일을 저장해보면 이전과 같은 파일임에도 불구하고 에러가 나지 않는 것을 확인할 수 있다. [참고 자료] https://stackoverflow.com/questions/55198..
📢 본 게시글의 명령어는 윈도우를 기준으로 하고 있습니다. 1. GitHub에서 프로젝트 repo 생성하기 GitHub에서 프로젝트용 repo를 생성한다. repo 생성 시에는 README 파일 없이 생성해 주었다. repo 생성을 완료하면 README가 없는 레포가 위와 같이 만들어진다. 2. Local에서 CRA로 TS 프로젝트 만들기 VSCode로 해당 프로젝트를 만들 루트 폴더에 진입하고 아래와 같이 CRA로 프로젝트를 생성한다. yarn create react-app 프로젝트명 --template typescript 예전에는 npm보다 yarn이 속도가 빨랐지만 요새는 큰 차이가 없다고 한다. 나는 고양이를 좋아하니까(💙😺💙) yarn으로 세팅해 주었다. 당장 필요하지 않은 파일들은 다 지우고,..
깃허브에서는 팀 작업용 조직 계정을 사용해 협업을 진행할 수 있다. 개인 계정으로 조직 계정에 참여해 공유 프로젝트에 대해 공동 작업을 할 수 있는데, 바로 Organization이다. Organization 생성하기 GitHub 상단 네비바의 + 버튼을 누르면 New 관련 메뉴들이 나오는데, 그중 New organization을 클릭한다. 학업용 프로젝트를 위한 organization이므로 무료인 Create a free organization을 클릭한다. Organization account name에는 해당 조직 계정의 이름, Contact email에는 조직 계정과 관련해 컨택할 수 있는 이메일을 입력한다. 비즈니스용 조직 계정이라면 A business tor institution, 그 외의 경우..
문제 i팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를 들어 5! = 5 * 4 * 3 * 2 * 1 = 120입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해 주세요. i! ≤ n 제한사항 0
문제 아무 원소도 들어있지 않은 빈 배열 X가 있습니다. 양의 정수 배열 arr가 매개변수로 주어질 때, arr의 앞에서부터 차례대로 원소를 보면서 원소가 a라면 X의 맨 뒤에 a를 a번 추가하는 일을 반복한 뒤의 배열 X를 return 하는 solution 함수를 작성해 주세요. 제한사항 1 ≤ arr의 길이 ≤ 100 1 ≤ arr의 원소 ≤ 100 입출력 예 arr result [5, 1, 4] [5, 5, 5, 5, 5, 1, 4, 4, 4, 4] [6, 6] [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6] [1] [1] 내가 작성한 답안 const solution = (arr) => { let X = ''; arr.map(e => X += ` ${e}`.repeat(e)); r..
Web Storage란? HTML5에서 제공되는 웹 스토리지는 클라이언트의 로컬에 키(key)와 값(value)의 형태로 데이터를 저장하는 API이다. Cookie와의 차이점 및 특징 웹 스토리지가 나오기 이전에는 응용프로그램이 데이터를 서버에 요청할 때마다 매번 쿠키에 그 정보를 저장해야 했다. 쿠키와 다르게 웹 스토리지 객체는 네트워크 요청 시 데이터가 서버로 전송되지 않는다. 이러한 특징 때문에 쿠키보다 더 많은 자료를 보관할 수 있는데, 제한 용량은 5MB 이상이나 브라우저에 따라 다를 수 있다. 서버가 HTTP 헤더를 통해 스토리지 객체를 조작할 수 없다. 웹 스토리지 객체 조작은 모두 JavaScript 내에서 수행된다. 키(key)와 값(value)은 반드시 문자열이어야 한다. 숫자나 객체 ..