전체 글

전체 글

    [python] 프로그래머스 > 깊이/너비 우선 탐색(DFS/BFS) > 타겟 넘버

    - 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 target이 매개변수로 주어질 때 숫자를 적절히 더하고 빼서 타겟 넘버를 만드는 방법의 수를 return 하도록 solution 함수를 작성해주세요. - 제한사항 주어지는 숫자의 개수는 2개 이상 20개 이하입니다. 각 숫자는 1 이상 50 이하인 자연수입니다. 타겟 넘버는 1 이상 1000 이하인 자연수입..

    [python] 프로그래머스 > level1 > 같은 숫자는 싫어!

    - 문제 설명 배열 arr가 주어집니다. 배열 arr의 각 원소는 숫자 0부터 9까지로 이루어져 있습니다. 이때, 배열 arr에서 연속적으로 나타나는 숫자는 하나만 남기고 전부 제거하려고 합니다. 단, 제거된 후 남은 수들을 반환할 때는 배열 arr의 원소들의 순서를 유지해야 합니다. 예를 들면, arr = [1, 1, 3, 3, 0, 1, 1] 이면 [1, 3, 0, 1] 을 return 합니다. arr = [4, 4, 4, 3, 3] 이면 [4, 3] 을 return 합니다. 배열 arr에서 연속적으로 나타나는 숫자는 제거하고 남은 수들을 return 하는 solution 함수를 완성해 주세요. - 제한사항 배열 arr의 크기 : 1,000,000 이하의 자연수 배열 arr의 원소의 크기 : 0보다 ..

    탐욕알고리즘(Greedy)

    탐욕알고리즘이란? - 최적의 해에 가까운 값을 구하기 위해 사용됨 - 여거 경우 중 하나를 결정해야할 때마다, 매순간 최적이라고 생각되는 경우를 선택하는 방식으로 진행해서 ,최종적인 값을 구하는 방식 탐욕 알고리즘의 예 문제1 : 동전문제 지불해야한느 값이 4720원 일 때 1원 50원 100원 500원 동전으로 동전의 수가 가장 적게 지불하기오. - 가장 큰 동전부터 최대한 지불해야하는 값을 채우는 방식으로 구현가능 - 탐욕알고리즘으로 매순간 최적이라고 생각되는 경우를 선택하면 됨 해결방법 coin_list = [500, 100, 50, 1] def main_coin_count(value, coin_list): total_coin_count = 0 details = list() coin_list.sor..

    GIT(branch, merge, pull & request)

    git commit --amend 이미 저장한 commit 메세지 수정하는 법 >> 는 append하라는 의미 # this is commend > 는 덮어씀 git -- checkout 파일이름 : 변경사항 취소 기존 checkout -> 버전업 restore 브랜치 이동 기존 : checkout -> 버전업 : switch - branch에서 만든 파일 커밋 안한채로 master에서 ls로 확인하면 조회된다. 오ㅐ??? - git은 commit기준으로 돌아가서 모든게 나와버린다. - 그런데 아무것도 안해줬으니 tracking의 대상이 아니다. 그래서 있던 말던 신경 안씀 - 하지만 commit을 하는 순간 git은 커밋되지 않은 파일을 알아채고 넌 여기에 있는거 아니야!! 라고 말한다. -> ls를 해..

    GIT 사용법(MarkDown 사용법, git ignore파일) & Pycharm에서 GIT 사용시 루틴

    GIT HUB 해야하는 이유 현업에 가지 않은이상 경력을 쌓는 법 : "프로젝트" 자소서 보다 증거중심주의 -> "GIT HUB" 기본적인 리눅스 명령어 - 리눅스 명령어를 통해 키보드나 마우스로 하는 것 다 할 수 있음 - 해당경로에서 ls명령어를 이용해 존재하는 파일을 보면 사용자인터페이스를 통해 보는것과 동일하다. - touch 명령어를 사용해 python파일 생성 cmd(windows에서 실제로 제공) VS git bash --> 조상이 달라 unix, window - pycharm 환경설정 pip freeze > packages pip install -r packages mv packages requirements.txt venv 써야하는 이유 - 배포 시 반드시 필요. 특히나 우리반은 클라우드..

    [python] 프로그래머스 > 스택/큐 > 주식가격

    1) 첫번째 시도 : pop을 사용하였고, for문 안에 모든 경우의 수를 일일이 적어주었다. -> 시간초과 2) 두번째 시도 : collections의 deque를 사용하였다. for문 안에 조건을 조금 줄였다. --> 시간초과 3) 세번째 시도 : append()를 쓰면 느리다는 글을 보고 수정 --> 시간초과 4) 네번째 시도 : 도저히 모르겠어서 구글에 찾아본 결과 pop() 또는 deque()를 사용하면 더 느리다는 글을 보고 변경 --> 시간초과 4) 이게 진짜 답!!! : break를 하기 전 이미 1을 더한 상태이므로 answer[i]가 1임을 굳이 명시해주지 않아도 됨을 깨닳음 -> 삭제 -> 성공 왜 큐/스택문제라고 굳이 해놨는지 잘 모르겠다... 당연히 pop()을 사용해야할 줄 알았다.

    Machine Learning(ML)_Taitanic예제

    decision tree 알고리즘 -> depth를 정해줘야함 결정 트리 학습법 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 결정 트리 학습법(decision tree learning)은 어떤 항목에 대한 관측값과 목표값을 연결시켜주는 예측 모델로써 결정 트리를 사용한다. 이는 통계학과 데이터 마이닝, ko.wikipedia.org 1. Load Titanic Datasets¶ In [1]: import pandas as pd train = pd.read_csv('data/titanic/train.csv', index_col='PassengerId') print(train.shape) print(train.info()) train.head() (891..

    Machine Learning(ML)_iris_data예제

    1. 붓꽃 데이터 Load¶ In [5]: from sklearn.datasets import load_iris iris_datasets = load_iris() print(type(iris_datasets), iris_datasets.keys()) dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names']) In [17]: print(iris_datasets['data'].shape) iris_datasets['data'] (150, 4) Out[17]: array([[5.1, 3.5, 1.4, 0.2], [4.9, 3. , 1.4, 0..