본문 바로가기

분류 전체보기

(426)
아나콘다 설치 시 pycharm은 동작하지만 vscode에서 에러나는 패키지들, Anaconda packages having error not in pycharm but vscode, python, library, numpy, scipy, matplotlib, opencv-python, pip 아나콘다에서는 설치가 정상으로 끝났고, pycharm에서는 정상 동작을 확인했다. 근데 똑같은 환경에서 vscode으로 동작하면 뻑난다. (특히 환경복사 했을 경우에) 내 경우에는 numpy, scipy, opencv-python (opencv), matplotlib. 해당 환경에서 conda install로 설치하지 않고 pip install --upgrade --force-reinstall matplotlib 등 맨 뒤에 패키지 이름 바꿔가며 설치하고 하니까 됐음. 아나콘다 환경을 이식하고 싶은 경우에는 아래를 참조 2021.03.24 - [Programming/Artificial Intelligence (AI)] - 아나콘다 환경 복사/이식, Anaconda environment copy/trans..
아나콘다 환경 복사/이식, Anaconda environment copy/transfer, python, pycharm, vscode, machinelearning, ai 시작 - anaconda prompt 를 켠다. conda env list 입력해서 복사할 환경의 이름을 확인한다. conda env export -n env_name > env.yml 입력해서 어떤 환경의 이름과 설치된 패키지 등을 추출한다. conda env create -f env.yml 다른 컴퓨터 등에서 시작 - anaconda prompt 를 켜고 입력해서 추출한 파일로 환경을 새로 설치한다. 이 때, matplotlib or numpy 등은 가끔 제대로 설치가 안되거나 해서 구동 시 뻑날 때가 있다. 아래를 참고하자. 예전에 썼던 환경을 복사하는 아래의 방법도 있다. 2021.02.10 - [Programming/Artificial Intelligence (AI)] - 아나콘다 환경 설치, ..
탐욕법 06 - 단속카메라, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, search, greedy // Process // 1. Input routes (in, out) array // 2. Make routeList and sort using out position // 3. Iterate all // 3.1. Check if i's in position is before current picked out position // 3.1.1. If not -> change out position to i's out position, and add cameraCount // 4. Return cameraCount import java.util.*; class Solution { public int solution(int[][] routes) { int cameraCount = 0; // 2. List r..
탐욕법 05 - 섬 연결하기, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, search, greedy 최소신장트리 (Minimum Spanning Tree, MST) 문제였는데, 처음보는거라서 Kruskal, Prim 방식 2가지가 있다고 해서 2가지로 풀어두었다. import java.util.*; // Kruskal mst // Process // 1. Input n, costs // 2. Sort using cost (ascending way) // 3. Iterate costs // 3.1. Check edge is valid or not // 3.1.1. If valid -> add cost to totalCost // 3.1.2. If not -> next // 4. Return totalCost class Solution { public int solution(int n, int[][] co..
탐욕법 04 - 구명보트, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, search, greedy // Process // 1. Input // 2. Sort people in ascending way // 3. Iterate till front and rear index are met // 3.1. Check if front and rear index value can take the same boat // 3.1.1. If so -> move both indices // 3.1.2. If not -> move rear index // 3.2. ++boatCount // 4. Return boatCount import java.util.*; class Solution { public int solution(int[] people, int limit) { int boatCount = 0; int fr..
탐욕법 03 - 큰수만들기, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, search, greedy // 문제에서 예를 들 때 전체 조합을 나열하고 가장 큰 것을 골라서 순서가 변해도 상관 없을 것 같으나, // 실제로 답은 순서는 건드리지 않고 찾아나가야함. // Process // 1. Input // 2. 결과 숫자를 만들 때 까지 반복한다. // 2.1. 결과 숫자를 만들 때 필요한 최소 길이를 남기고 서브스트링을 만든다. // 2.2. 서브스트링에서 가장 큰 숫자를 찾아서 더한다. 이 때, 해당 인덱스를 기억해서 다음번에 여기부터 서브스트링을 만든다. // 2.3. 가장 큰 수를 결과에 더해둔다. // 2.4. 인덱스를 바꾼다. // 3. 결과 반환한다. class Solution { public String solution(String number, int k) { StringBuilder ..
탐욕법 01 - 체육복, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, search, greedy // Process // 1. Input n, lost, reserve // 2. Convert to list // 3. Remove overlapped students // 4. Iterate while lost and reserve are remained // 4.1. Check around(+-1) value of reserve is in lost array // 4.1.1. If so -> Remove both, and count student // 5. Return student import java.util.*; class Solution { public int solution(int n, int[] lost, int[] reserve) { int student = 0; // 2. List l..
완전탐색 03 - 카펫, 프로그래머스, 알고리즘, Programmers, Stack, Queue, Hash, 코딩테스트, Algorithm, 풀이과정, Leetcode, 릿코드, 코딩테스트, Tech interview, Heap, 힙, 정렬, sort, search # Process # 1. Input brown, yellow numbers # 2. Check the number of edges (brown) # 2.1. If so -> Check the number of inner sector (yellow) # 2.1.1. If so -> append to answer (width, height) # 3. Return valid size import math def solution(brown, yellow): answer = [] # 2. init_brown = math.ceil(brown / 2) end_brown = 3 for width_brown in range(init_brown, end_brown-1, -1): height_brown = (brown -..