반응형

전체 글

· git/git
1. Git log Git log는 Git 저장소의 커밋 히스토리를 조회하는 명령어입니다. 이 명령어를 사용하면 프로젝트의 커밋 기록을 보고, 각 커밋의 정보를 확인할 수 있습니다. 2. 명령어 1) git log git log 가장 최근의 커밋부터 역순으로 나열된 커밋 목록이 출력됩니다. 각 커밋에는 고유한 식별자인 해시값, 작성자 정보, 작성 일시, 커밋 메시지 등이 표시됩니다. 3. git log Option 1) oneline 각 커밋을 한 줄로 요약해서 표시합니다. git log --oneline 2) graph 커밋 그래프를 그려서 브랜치와 머지 정보를 시각적으로 보여준다. git log --graph 3) author 특정 작성자의 커밋만 보여줍니다. git log --author 특정 작성..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 뭔가 확실한 방법이 생각나지 않아 나열하면서 풀어야겠다고 마음먹었습니다. 그리고 나열하다 규칙성이 나오면 미루어 짐작해서 계산하면 된다고 생각했습니다. 이 풀이의 핵심은 각 자리의 문자들의 숫자를 다 더한게 순서를 나타낸다는 것입니다. 예를들어 A = 1 순서 1 AA = 1 + 1 순서 2 AAA = 1 + 1 + 1 순서 3 AAAA = 1 + 1 + 1 + 1 순서 4 AAAAA = 1 + 1 + 1 + 1 + 1 순서 5 AAAAE = 1 + 1 + 1 + 1 + 2 순서 6 여기까지 보면 ..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 문제 풀기전 했던 생각 // 문제 /* 선행스킬은 조건 이 참이어야 배울 수 있다. skill -> 1이상 20 이하인 배열 중복 x skill_trees > 중복 x 스킬을 나타내는 문자열 , 길이가 2이상 26이하인 데이터가 크지 않으니 거의 제한 x 모두 중복이 없다. return 가능한 스킬트리의 개수 return number */ // 설계 /* skil 배열을 먼저 만들어서 해당 각 스킬트리마다 해당 스킬이 나오면 하나씩 제거 즉 배열로 arr[0]으로 판단 if(선행 스킬이 필요한 스킬..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 처음에는 완전 접근을 잘못했다. 처음 풀었을 때 생각의 흐름 1. dirs길이가 짧고 반복문의 깊이가 깊을 것 같지 않아 forEach를 사용해도 되겠다고 판단했다. 2. 따라서 string을 스프레드 연산자를 통해 배열로 만들고 forEach로 순회하면서 좌표를 저장해야겠다. 3. 좌표는 도착지점만 저장하고 중복이 있으면 안되니 new Set을 사용해서 저장해야겠다. 4. 경계지점 넘어가는 것은 if문을 통해서 제어해야겠다. 5. 이 문제에서 모든 데이터는 string이나 array 보다 obje..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 프로그래머스에서는 해당 문제를 자바스크립트로 풀 수 없다. 그래서 vscode에서 자바스크립트로 풀고 파이썬으로 코드를 변경하였다. DP를 방금 공부해서 어떻게 풀어야겠다는 바로 생각이났는데 코드로 표현하는데 시간이 걸렸다. DP를 모르시면 참고! Dynamic Programming (DP) 땅따먹기 문제를 풀고 있는데 2시간동안 생각을 하는데 도저히 안 풀렸다. 계속 시간초과가 나서 이것저것 시도 해보다가 힌트라도 보자해서 봤던게 바로 DP였습니다. 그럼 DP는 과연 무엇일까? D html-jc...
· 알고리즘
땅따먹기 문제를 풀고 있는데 2시간동안 생각을 하는데 도저히 안 풀렸다. 계속 시간초과가 나서 이것저것 시도 해보다가 힌트라도 보자해서 봤던게 바로 DP였습니다. 그럼 DP는 과연 무엇일까? Dynamic Programming (동적 계획법) DP 뭔가 어려워보이는데 그냥 "기억하면서 문제 풀기"라고 생각하면 편합니다. 이게 뭔말이지 싶겠지만 5분만 참고 글을 읽으면 바로 이해 가능합니다. 예제는 직접 눈으로 보고 느끼면 이해가 더 쉽기에 간단한 예제를 가져와봤습니다. 바로 `피보나치 수열`입니다. 더보기 피보나치 수열 : 앞 두 개의 항목의 합이 그 다음 항목의 값이 되는 수열을 의미한다. const fib = (n) => { if (n { if (n in memo) return memo[n]; if (n
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 틀린 풀이 1 function solution(number, limit, power) { let result = 0 const box = [] for(let i = 1; i{ if(cur > limit){ acc += power }else{ acc += cur } return acc },0) } function getDivisor(number){ const divisor = [] for(let i = 1; i
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 미리 생각해둔 것 // 예외 처리 1. 같은 발음이 연속으로 있을 때 하지만 연속이 아니면 괜찮 2. 불가능한 발음이 포함되어있을 때 ex) "woowo" 풀이 순서 1. 연속으로 하는 옹알이가 있으면 제외시키기 2. 발음가능한 옹알이는 전부 공백으로 교체 3. 공백자체는 length가 0이기 때문에 모두 공백으로 교체되면 옹알이가 가능하고 하나라도 공백으로 교체되지 않으면 옹알이 불가능 function solution(babbling) { let result = 0 const babblArr = ..
프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 풀이 시간 복잡도 계산이랑 설계를 잘 못했다. 그리고 문제이해를 잘 못했다. 상수의 앞에 아래서부터 위로 쌓이게 된다!! 정해신 순서로 쌓인 햄버거만 포장을 한다!! 즉 재료가 빵야채빵고기빵 이렇게 쌓이면 햄버거를 만들지 못한다. 실수 포인트 1 나는 배열중에서 순서만 맞으면 중간에 무엇이 있어도 상관 안 했다. 실수 포인트 2 여기서 2중 for문을 쓰면 안되는데 썼다 why? 문제이해를 똑바로 못해서 이걸 쌓이는 도중에 햄버거를 만들어야하는데 다 쌓고 햄버거를 만들려고 해서 코드 설계 자체가 틀렸다...
개발자성장기
개발 공부 노트