전체 글 61

[Git] Github 여러 Commit의 Author(커밋 작성자) 변경하기 / Commit Message 변경하기(rebase, reset, reflog, filter-branch )

Github 여러 Commit의 Author(커밋 작성자) 변경하기 / Commit Message 변경하기(rebase, reset, reflog, filter-branch ) github에는 커밋을 하게 되면 아래와 같이 잔디가 심어지는데, 며칠 전 내 github에 들어가보니 이 때까지 커밋했던게 제대로 반영이 되어 있지 않았다. 무슨 일인가 확인해보니 내 계정이 아니고 다른 계정을 만들어놨던게 Author로 등록이 되어서 하나도 반영이 되지 않았던 것이다. 그래서 구글링을 해서 복구하긴 했지만 나랑 완벽하게 똑같은 사례가 없어서 이것 저것 찾아보느라 힘들었기 때문에 기록 겸 다음에 같은 실수가 일어났을 때 찾아보려고 포스팅을 한다. Git commit Author 변경 아래의 Error(잘못된 커밋..

Git 2021.08.12

[프로그래머스 / Python] 위장(해시) - Lv.2

위장(해시) - Lv.2 문제 설명 스파이들은 매일 다른 옷을 조합하여 입어 자신을 위장합니다. 예를 들어 스파이가 가진 옷이 아래와 같고 오늘 스파이가 동그란 안경, 긴 코트, 파란색 티셔츠를 입었다면 다음날은 청바지를 추가로 입거나 동그란 안경 대신 검정 선글라스를 착용하거나 해야 합니다. 종류 이름 얼굴 동그란 안경, 검정 선글라스 상의 파란색 티셔츠 하의 청바지 겉옷 긴 코트 스파이가 가진 의상들이 담긴 2차원 배열 clothes가 주어질 때 서로 다른 옷의 조합의 수를 return 하도록 solution 함수를 작성해주세요. 제한사항 clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있습니다. 스파이가 가진 의상의 수는 1개 이상 30개 이하입니다. 같은 이름을 가진 의상은 존재..

카테고리 없음 2021.08.07

[프로그래머스 / Python] 전화번호 목록(해시) - Lv.2

전화번호 목록(해시) - Lv.2 문제 설명 전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다. 전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다. 구조대 : 119 박준영 : 97 674 223 지영석 : 11 9552 4421 전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수로 주어질 때, 어떤 번호가 다른 번호의 접두어인 경우가 있으면 false를 그렇지 않으면 true를 return 하도록 solution 함수를 작성해주세요. 제한 사항 phone_book의 길이는 1 이상 1,000,000 이하입니다. 각 전화번호의 길이는 1 이상 20 이하입니다. 같은 전화번호가 중복해서 들..

Python/Coding Test 2021.08.06

[프로그래머스 / Python] [1차]다트 게임(2018 KAKAO) - Lv.1

[1차]다트 게임(2018 KAKAO) - Lv.1 다트 게임 카카오톡에 뜬 네 번째 별! 심심할 땐? 카카오톡 게임별~ 카카오톡 게임별의 하반기 신규 서비스로 다트 게임을 출시하기로 했다. 다트 게임은 다트판에 다트를 세 차례 던져 그 점수의 합계로 실력을 겨루는 게임으로, 모두가 간단히 즐길 수 있다. 갓 입사한 무지는 코딩 실력을 인정받아 게임의 핵심 부분인 점수 계산 로직을 맡게 되었다. 다트 게임의 점수 계산 로직은 아래와 같다. 다트 게임은 총 3번의 기회로 구성된다. 각 기회마다 얻을 수 있는 점수는 0점에서 10점까지이다. 점수와 함께 Single(S), Double(D), Triple(T) 영역이 존재하고 각 영역 당첨 시 점수에서 1제곱, 2제곱, 3제곱 (점수1 , 점수2 , 점수3 ..

카테고리 없음 2021.08.05

[Error] MongoDB 설치 중 에러.. [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused

MongoDB를 사용하기 위해 설치했다. 1. WSL 터미널을 연다 2. 'sudo apt update' 을 입력하고 apt 업데이트 3. 'sudo apt-get install mongodb' 을 입력하고 설치한다 4. 'mongod --version' 을 입력하고 설치가 잘 되었는지 확인한다 5. 'sudo service mongodb start' 을 입력하고 mongo 를 사용할 수 있게 서비스 시작 6. 'mongo' 를 입력하면 mongo shell로 이동한다 https://docs.microsoft.com/ko-kr/windows/wsl/tutorials/wsl-database#install-mongodb WSL을 사용 하 여 데이터베이스 추가 또는 연결 Linux용 Windows 하위 시스템..

JavaScript/Node.JS 2021.08.04

[Error] Error: listen EADDRINUSE: address already in use :::4000

Node.JS 실행 중에 다음과 같은 에러가 발생했는데, 이미 4000포트를 사용하고 있어서 발생하는 것 같다. 구글링을 해서 찾아보니까 해결을 위해서는 4000번 포트를 강제종료 해야한다. $ lsof -i TCP:4000 위의 명령어는 현재 활성화된 프로세스 리스트를 보여주는 lsof 에 특정 포트를 나타내는 -i 를 붙여 현재 실행중인 리스트를 보여준다. 다음과 같이 4000번 포트를 점유중인 번호인 14236를 확인할 수 있고 강제종료 시그널 -9를 활용하여 $ kill -9 14236 을 통해 강제종료 시킬 수 있다.

JavaScript/Node.JS 2021.07.27

[프로그래머스 / Python] 체육복(탐욕법(Greedy)) - Lv.1

체육복(탐욕법(Greedy)) - Lv.1 문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을..

Python/Coding Test 2021.07.22

[프로그래머스 / Python] K번째수(정렬) - Lv.1

K번째수(정렬) - Lv.1 문제 설명 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1..

Python/Coding Test 2021.07.22

[프로그래머스 / Python] 완주하지 못한 선수(해시) - Lv.1

완주하지 못한 선수(해시) - Lv.1 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant completion ret..

Python/Coding Test 2021.07.21

[Python] 다익스트라 최단 경로 알고리즘

최단 경로(Shortest Path) 알고리즘 최단 경로 알고리즘은 말 그대로 가장 짧은 경로를 찾는 알고리즘이다. 그래서 '길 찾기' 문제라고도 불린다. 최단 경로 알고리즘 유형에는 다양한 종류가 있는데, 상황에 맞는 효율적인 알고리즘이 이미 정립되어 있다. 예를 들어 '한 지점에서 다른 특정 지점까지의 최단 경로를 구해야 하는 경우', '모든 지점에서 다른 모든 지점까지의 최단 경로를 모두 구해야 하는 경우' 등의 다양한 사례가 존재한다. 각 지점은 그래프에서 노드로 표현되며, 지점 간 연결된 도로는 그래프에서 간선으로 표현된다. 다익스트라 최단 경로 알고리즘 다익스트라 최단 경로 알고리즘은 그래프에 여러 개의 노드가 있을 때, 특정한 노드에서 출발하여 다른 노드로 가는 각각의 최단 경로를 구해주는 ..

Python 2021.07.21