전체 글 49

[프로그래머스] 비밀 코드 해독

https://school.programmers.co.kr/learn/courses/30/lessons/388352 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr제한사항10 ≤ n ≤ 301 ≤ (q의 길이 = m) ≤ 10q[i]의 길이 = 5q[i]는 i+1번째 시도에서 입력한 5개의 서로 다른 정수를 담고 있으며, 오름차순으로 정렬되어 있습니다.1 ≤ q[i][j] ≤ nans의 길이 = mans[i]는 i+1번째 시도에서 입력한 5개의 정수 중 비밀 코드에 포함된 정수의 개수를 나타냅니다.0 ≤ ans[i] ≤ 5비밀 코드가 존재하지 않는(답이 0인) 경우는 주어지지 않습니다. 처음 문제를 보고..

DEV/코딩테스트 2025.04.10

[프로그래머스] 지게차와 크레인

https://school.programmers.co.kr/learn/courses/30/lessons/388353 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krrequest가 단일 문자로 올경우 테두리와 붙어있는 요청 문자를 제거하기 때문에 탐색이 필요하다고 생각함 문제에서 주어진 storage로만 이용해서 탐색하기엔 처음 기준이 없다고 생각하여 storage에 테두리를 추가하여 탐색하는 아이디어를 떠올림 두 번 반복된 문자의 요청이 올 경우 간단히 storage를 돌아 replaceAll 해주면 됨 requests의 반복이 진행될 때마다 다시 탐색해야 하기 때문에 반복문 상단에서 탐색 변수 초기화 ..

DEV/코딩테스트 2025.04.08

[프로그래머스] 서버 증설 횟수

https://school.programmers.co.kr/learn/courses/30/lessons/389479 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr제한사항players의 길이 = 240 ≤ players의 원소 ≤ 1,000players[i]는 i시 ~ i+1시 사이의 게임 이용자의 수를 나타냅니다.1 ≤ m ≤ 1,0001 ≤ k ≤ 24 제한사항을 보았을 때 수가 크지 않아 어떤 알고리즘도 채택이 가능하다고 생각했음 문제 예시를 확인하고 서버가 증설됐을 때 시간을 가지고 있는 배열을 통해 현재 서버의 개수를 확인하고 관리할 수 있겠다 생각함 필요한 서버의 개수는 현재 플레이어 수에서 ..

DEV/코딩테스트 2025.04.07

[프로그래머스] 금과 은 운반하기

https://school.programmers.co.kr/learn/courses/30/lessons/86053 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr제한사항0 ≤ a, b ≤ 10^91 ≤ g의 길이 = s의 길이 = w의 길이 = t의 길이 = 도시 개수 ≤ 10^50 ≤ g[i], s[i] ≤ 10^91 ≤ w[i] ≤ 10^21 ≤ t[i] ≤ 10^5a ≤ g의 모든 수의 합b ≤ s의 모든 수의 합 친구와 함께 풀게 되었는데 초기 20분 정도 문제 파악하는데 쓰였음. 제한사항의 범위가 크기 때문에 브루트 포스, dfs, bfs, dp 등은 소거할 수 있었음. 친구는 이분 탐색에 대해..

DEV/코딩테스트 2025.04.05

[데미안] 여전히 이 시대에 필요한

Instruction 인간실격 다음으로 알라딘 중고서점에서 산 소설이다. 사실 구매할 때 어디선가 본 듯한 제목이라 구매했기 때문에 읽기 전에는 무슨 내용인지 전혀 모르는 상태에서 읽었다.  요즘은 자기 전에 읽고 자는 버릇을 들이고 있는데 소설이 재밌다 보니 꽤 읽다가 잠든 적이 많다. 주인공인 싱클레어에 대해 공감을 많이 하기도 했고 데미안 같은 롤모델이 주변에 있었으면 좋겠다고 생각하게 한 소설이다. 주로 삶과 내 일상에 대해 대입하고 비교하며 읽었다.당연한 것일까? 절대적인 것일까? 초반에 카인과 아벨의 이야기가 나왔을 때 문득 들었던 생각이 있었다. 우리가 듣고 보는 것들의 당연하고 절대적이기란 쉽지 않다는 것이다. 데미안과 이야기하기 전 성서에 나오는 내용을 그대로 받아들이는 싱클레어처럼 우리..

취미/Book Review 2025.02.05

[craco.js] babel-plugin-styled-components 적용하기

const craco.js에서 babel-plugin-styled-components 적용하기 = ( Param ) => {💻 return Result;// craco.config.js// eslint-disable-next-line no-undefmodule.exports = { plugins: [ // craco를 통한 절대 경로 설정 등 webpack에 적용할 플러그인 정의 // ... ], babel: { plugins: [ // styled-components 플러그인 추가 [ 'babel-plugin-styled-components', { // eslint-disable-next-line no-undef ..

DEV/DevelopSystem 2025.01.28

[중고 바이크 거래] 바린이의 중고 바이크 화물 거래

8월에 2종 소형 면허 글을 쓰고 드디어 충분한 돈과 마음에 드는 매물이 생겨서 구매하게 되었다. 여러 기종들에 대해서 고민했지만 역시 자기만족을 위해서는 가장 먼저 사고 싶었던 기종을 고르는 게 좋다고 생각해서 CB300R을 선택했다.  개인적으로 쿼터급 네이키드 사이에서는 가장 이쁘다고 생각하기 때문에 기종 선택에 있어서는 크게 고민하지 않았던 것 같다. 다만, 매물 찾을 때 사람들이 선호하는 기종이 아니다 보니 원하는 연식에 옵션을 찾는 것이 힘들었다.  매물을 찾을 때 고려했던 사항슬리퍼 클러치가 들어간 22년식 이후 매물최대한 순정에 가까운 튜닝일 것블랙박스가 달려있을 것 크게 이렇게 3가지 기준을 잡고 매물을 찾았다. (순정에 가까운 것을 찾는다 했지만 잘못 찾아 다시 튜닝해야 하는 부분이 생..

일상/Motorcycle 2024.12.30

[인간 실격] 순수했던 겁쟁이의 이야기

Instruction 인간실격의 캐릭터를 모티브로 한 애니메이션을 보다가 문득 그 내용에 대해서 궁금해진 상태에서 친구와 약속 때문에 이수역에 들렀는데 알라딘 중고 서점이 눈에 보여 들어가게 되었다. 그래서 인간실격과 다른 책 한 권을 구매했다. 이제 것 주로 자기 개발서만 읽다가 소설을 읽으니 어색했지만 이제는 소설의 재미를 알았다. 뒤로 갈수록 책의 분위기가 많이 어두워지지만 읽으면서 내 삶에 대해 되돌아보고 깨달은 것이 많았다. 온전히 존립할 수 없다면 처음 주인공에게 든 느낌은 측은했다. 그는 본인의 기분과 만족이 아닌 타인의 불편함, 불쾌감을 우선으로 행동한다. 타인을 이해하지 못하지만 이해하지 못하는 모습이 타인에게 불편함과 불쾌감을 줄까 봐 익살스럽게 행동한다. 그래서 그는 항상 본심이 들킬..

취미/Book Review 2024.12.30

Magic Number 나만의 정의

Magic Number컴퓨터 프로그래밍에서 **매직 넘버(Magic Number)**는 다음 중 하나를 의미합니다:  - 명확한 설명이 없거나 여러 번 반복되어 나타나는 고유 값으로, (가능하면) 이름이 지정된 상수로 대체될 수 있는 값.  - 파일 형식이나 프로토콜을 식별하는 데 사용되는 고정된 숫자 또는 텍스트 값 (파일과 관련된 내용은 파일 서명 목록을 참조).  - 다른 의미로 오인될 가능성이 적은 독특하고 고유한 값 (예: 전역 고유 식별자, Globally Unique Identifiers).더보기출처: https://en.wikipedia.org/wiki/Magic_number_(programming)ChatGPT를 통해 번역첫 만남 2년간 개발해 왔지만 Magic Number에 대해 알게 ..

DEV/회고록 2024.11.29

[git] 다른 저장소에서 commit 가져오기 (cherry-pick)

const 다른 저장소에서 commit 가져오기 = ( cherry-pick ) => {💻 return Result;# 가져올 커밋이 존재하는 repo 추가$ git remote add # 커밋 해시 확인하기$ git log /# 확인한 커밋 cherry-pick$ git cherry-pick  📝 console.log( history ) 회사 프로젝트 진행 중 기존에 존재하는 프로젝트를 기반으로 다른 프로젝트를 진행해야 할 상황이 생겼다. 두 프로젝트의 공통된 부분이 한쪽 프로젝트에서 진행되면 다른 프로젝트에도 적용해야 하기 때문에 공통부분을 어떻게 업데이트할지 고민했다.  공통된 부분을 기반으로 두 프로젝트를 진행하기 때문에 하나의 git 저장소에서 브랜치를 통해 두 프로젝트를 진행하는 방법이 ..

DEV/DevelopSystem 2024.11.17