전체 글 125

[알고리즘] 완전탐색(Brute Force)

백준 1816, 2503, 14568, 19532 Brute force = 무식한 힘 - 가능한 모든 경우의 수를 때려박고 - 조건에 맞다면 출력! 문제를 만났을 때, 기술과 아이디어를 먼저 찾으려한다면 모르는 기술과 아이디어를 만났을 때는 어떻게 풀 수 있겠는가? 앞으로는 어떤 문제든지 경우의 수가 보인다면 시간과 메모리만 충분히 주어질 때 완전탐색으로 그 문제를 해결할 수 있다. 더보기 완전탐색적 사고를 강요(?)하는 이유 : 근의 공식 문제를 풀어라! 라는 이야기가 나왔을 때, 근의 공식을 수학적으로 정리해서 코드로 쓸 수 있는 사람과 쓸 수 없는 사람이 존재합니다. 수학으로 정리해서 풀 수 없는 사람은 완전탐색적 사고를 먼저 생각해서 풀어내고, 나중에 수학적 지식을 채워나가면 됩니다. 반대로 수학..

알고리즘 2024.04.23

[알고리즘/JS] 입력과 출력

출력 console.log() 입력 const file = process.platform === 'linux' ? '/dev/stdin' : 'input.txt' // 백준 const fs = require('fs') const input = fs.readFileSync(file).toString().trim() - 숫자 +input Number(input) parseInt(input) - 문자 input - 수열 input.split(' ').map(Number) - 문자열 input.split(' ') - 배열 요소만 출력 console.log(...arr) console.log(arr.join(' ')) // → string type 반복문 // 1 for (let index = 0; index <..

알고리즘 2024.04.22

[JS/알고리즘] 백준1085. 최솟값 최댓값

C++ 로 알고리즘을 처음 배워서 for문으로 구하는 방식만 알고 있었는데 아니 이게 웬 걸 우리 JS에겐 Math 라이브러리가 있었다. 4ms 시간이 단축됐다. Math.min(value1, value2, ...) Math.min() - JavaScript | MDN Math.min() 함수는 주어진 숫자들 중 가장 작은 값을 반환합니다. developer.mozilla.org + 최댓값 Math.max() 소수점 내림 Math.floor() 소수점 반올림 Math.round() 소수점 올림 Math.ceil() 제곱값 Math.pow() 제곱근 Math.sqrt() 랜덤 Math.random() 절대값 Math.abs() 부호 Math.sign()

A-HA💡/JS 2024.04.02

[CSS] 그라데이션 종류

icon에 drop-shadow를 하려고 했는데 속성을 부여하는 이미지에 따라 shadow가 결정돼서 아주 얇고 작은 아이콘에 확실한 효과를 주려니 투명도가 없어도 너무 희미했다. 그래서 배경을 원형 그라데이션으로 줄 수 있는 방법이 없나 찾아보다 발견하게 되었다. Radial Gradient radial-gradient() - CSS: Cascading Style Sheets | MDN The radial-gradient() CSS function creates an image consisting of a progressive transition between two or more colors that radiate from an origin. Its shape may be a circle or an ..

A-HA💡/CSS 2024.03.28

[Git] 기능 개발과 배포에 따른 branch 관리

대학교에서는 Git으로 add commit push 하는 법만 겨우 배웠었다 branch에 대한 개념도 잘 없어서 조원이랑 한 branch를 공유하며 잘못된 줄도 모르고 참 불편하다고만 생각했다 입사하고나서는 사수도 체계도 제대로 갖춰지지 않았어서 입사 당시 돼있던 것들을 토대로 눈치껏 익혔다. 기능/프로젝트 개발 단위로 feature를 파고 dev, stage, prod에 각각 merge하고 배포했다. 처음엔 branch를 새로 파야하는지도 몰라서 master에서 작업하다가 실서버 요청사항이 들어오면 작업중이던 파일(코드)을 모두 메모장에 복사해두었다가 다시 그대로 가져와서 이어 하는 매우 비효율적인 방법으로 했었다. 중간에 계셨던 백엔드 시니어 개발자분께서는 바로 master에 feature를 합쳐 ..

A-HA💡/Git 2024.03.19

주간회고록 5주차

5주차 🎯 이번 주 목표 스프린트와 챌린지 제출 놓치지 않기! 사이드 프로젝트 마무리하고 이력서 완성하기! 🏃‍♀️ 일일 스프린트 2월 1일 (목) ✅ 회사업무 너무 많아요ㅜ ❌ 주간회고록 4주차 ❌ JS 크롬앱 강의수강 #3.0 - 5.3 ✅ JS 크롬앱 챌린지 8th 2월 2일 (금) 성묘 2월 3일 (토) 가족행사 2월 4일 (일) 성묘 2월 5일 (월) ✅ 회사 업무 ⚠️ 유튜브 클론 강의수강 #1.0 - 2.4 2.1 ✅ 유튜브 클론 챌린지 1st 2월 6일 (화) ✅ 유튜브 클론 강의수강 #2.2 - 2.4 ✅ 유튜브 클론 강의수강 #3.0 - 3.4 ✅ 유튜브 클론 챌린지 2nd 2월 7일 (수) ✅ 회사 업무 ⚠️ 유튜브 클론 강의수강 #3.5 - 3.10 3.8 ✅ 유튜브 클론 챌린지 3..

Babel, Nodemon

Babel is a JavaScript compiler. nodeJS는 우리가 작성한 JS 코드를 이해한다. But 몇몇 최신 JS 코드는 이해하지 못 한다. 선택 1. 이해하는 코드만 사용 선택 2. babel 사용 : 우리가 작성한 최신 JS 코드를 컴파일해줌 npm install --save-dev @babel/core devDependencies: for developers dependencies: for the project npm install @babel/preset-env --save-dev touch babel.config.json touch : on linux, macOS @babel/preset-env is a smart preset that allows you to use the l..

package.json

json : 프로그래머가 파일에 정보를 저장하기 위해 만든 방식 a way that programmers invented to save information in files a way of writing things in files package.json 파일명 변경 불가 (대소문자 포함) npm init -> package.json 생성 package.json은 우리 프로젝트를 동작시킬 때 필요한 모듈들이 어떤 건지를 정보를 담고 있다. 따라서 대용량인 node_modules 폴더를 github에 업로드할 필요 없이 필요한 정보가 담긴 dependencies의 파일, 즉 package.json (+package-lock.json) 만 보내면 된다. .gitignore /node_modules packa..