분류 전체보기

    [git] 깃이란?

    [git] 깃이란?

    git git은 버전 관리 시스템이다. 여기서 버전이란, 당신이 a.txt라는 파일을 저장, 수정, 복사, 백업 등등을 하는 모든 작업을 말한다. 만약 당신의 프로젝트를 git repository에 등록했다면, git은 그 프로젝트 안에 있는 모든 파일들을 트래킹한다. git 트래킹 정보 트래킹 정보를 통해 개발자는 어떤 것이, 어디에서, 언제, 누가 바꿨는지 등등을 모두 알 수 있다. 또한 어떤 일이 일어났는지에 대한 모든 트래킹이 가능하기 때문에, 문제 상황 발생 시에는 파일의 history를 통해 그 전 시점(commit)으로 돌아갈 수 있다. git은 어떤 파일들을 추적할 수 있는가 깃은 사용자가 추적하길 원하는 모든 것을 읽을 수 있다. tmi) 사실 깃은 파일을 `Binary code`로 읽는..

    [백준] 1541번 잃어버린 괄호 - JavaScript(NodeJS)

    문제 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 코드 function sol(input) { const numbers = input.split("-").map((str) => str.split("+") .map(Number) .reduce((s, v) => s + v, 0) ); let answer = 2 * numbers[0] - numbers.reduce((s, v) => s + v, 0); return answer; } require("readline") .createInterface(proc..

    2021 네이버 부스트캠프 챌린지 합격 후기, 온보딩키트

    2021 네이버 부스트캠프 챌린지 합격 후기, 온보딩키트

    이전 글 2021 네이버 부스트캠프 코딩테스트 1차, 2차 후기 나를 잠깐 소개하자면 개발 공부를 한지 8개월차인 공돌이 출신(산업공학) 웹 프론트 개발자이다. 혼자 공부하는 비전공자로서 항상 빠르게 발전할 방법을 모색하다가 부스트캠프를 발견했다. gobae.tistory.com 최종 합격자 발표 2차 코딩테스트를 치르고 예정된 날짜 13일 오후 4시경에 합격자 등록 메일이 도착했다. 이전 글에서 언급했다시피 2차 코딩테스트는 3문제가 주어졌고 오픈톡방에서 3문제를 모두 맞췄다는 응시자들이 많았다. 예외처리를 착각해서 2.5문제 정도를 맞췄을거라 예상했던 나는 긴장된 채로 기다리고 있었다. 사실 20년도 부스트캠프에서는 3일 일찍 발표가 되었다는 소식을 듣고, 다들 열심히 설레발(?) 놓으시는 오픈톡방 ..

    [백준] 2108번 통계학 - JavaScript(NodeJS)

    [백준] 2108번 통계학 - JavaScript(NodeJS)

    문제 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 코드 function sol(input) { let answer = ""; const N = +input[0]; const numbers = input .slice(1) .map(Number) .sort((a, b) => a - b); answer += `${Math.round(numbers.reduce((s, v) => s + v, 0) / N)}\n`; answer += `${numbers[Math.floor(N / 2)]}\n`; const map = new Map..

    [백준] 2231번 분해합 - JavaScript(NodeJS)

    문제 2231번: 분해합 어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이 www.acmicpc.net 코드 function sol(input) { let answer = 0; const len = input.length; const N = +input; const min = input - len * 9; for (let i = min; i s + v, 0); if (num === N) { answer = +str; break; } } return answer; } require("readline") .createInterface..

    [자바스크립트] ?. 연산자, 옵셔널 체이닝

    [자바스크립트] ?. 연산자, 옵셔널 체이닝

    옵셔널 체이닝이 뭔가요?? 코드를 작성할 때, 데이터에서 특정 값들이 누락될 수도 있다. 당신에게는 아래의 data가 있다. const data = [ { name:"Thomas", like:{ food:"banana", drink:"milk", }, }, { name:"James", like:{ food:"pasta", drink:"coke", }, }, { name:"Kim", want:{ food:"ramyeon", drink:"water", }, } ]; data 기반으로 사용자 별 좋아하는 음식을 출력하려면, for(let i=0; i