[Linux] Anaconda 자주쓰는 명령어 정리
·
카테고리 없음
검색하기 귀찮아서 써두기 가상환경 생성conda create -n envnameconda create -n envname python=2conda create -n envname python=3.7 가상환경 목록 보기conda env list 현재 가상환경에 설치된 패키지 확인conda list 패키지 설치/삭제conda install packageconda install package=versionconda remove package 가상환경 활성화const activate envname 가상환경 종료conda deactivate 가상환경 제거conda env remove -n envname tmux 설치conda install -c conda-forge tmux vim 설치conda install -..
[Linux] tmux 자주쓰는 명령어 정리
·
카테고리 없음
검색하기 귀찮아서 써두기  새로운 session 생성tmux new -s session_name 세션 목록tmux ls session 접속tmux attach-session -t session_name detach 단축키ctrl + b, d session 삭제tmux kill-session -t session_number 스크롤 기능 단축키ctrl + b, [방향키로 조작]
[백준/Python] 1927번: 최소 힙
·
Study/백준
https://www.acmicpc.net/problem/1927문제널리 잘 알려진 자료구조 중 최소 힙이 있다. 최소 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오. 배열에 자연수 x를 넣는다. 배열에서 가장 작은 값을 출력하고, 그 값을 배열에서 제거한다. 프로그램은 처음에 비어있는 배열에서 시작하게 된다. 분류자료 구조우선순위 큐 접근 방식문제 자체는 heap 자료구조에 대해 이해하고 있으면 되고 파이썬의 내장 라이브러리 heapq를 사용하면 되므로 어렵지 않다. (이후에 heap 내용을 정리해서 글을 써보는 걸로...)하지만 계속 시간초과가 떴고, 원인은 입출력 속도가 느려서였다.import sysinput = sys.stdin.readline sys.stdin.readline(..
[백준/Python] 2910번: 빈도 정렬
·
Study/백준
https://www.acmicpc.net/problem/2910문제위대한 해커 창영이는 모든 암호를 깨는 방법을 발견했다. 그 방법은 빈도를 조사하는 것이다. 창영이는 말할 수 없는 방법을 이용해서 현우가 강산이에게 보내는 메시지를 획득했다. 이 메시지는 숫자 N개로 이루어진 수열이고, 숫자는 모두 C보다 작거나 같다. 창영이는 이 숫자를 자주 등장하는 빈도순대로 정렬하려고 한다. 만약, 수열의 두 수 X와 Y가 있을 때, X가 Y보다 수열에서 많이 등장하는 경우에는 X가 Y보다 앞에 있어야 한다. 만약, 등장하는 횟수가 같다면, 먼저 나온 것이 앞에 있어야 한다. 이렇게 정렬하는 방법을 빈도 정렬이라고 한다. 수열이 주어졌을 때, 빈도 정렬을 하는 프로그램을 작성하시오. 분류자료 구조정렬해시를 사용한..
[백준] 9012번: 괄호 (Python)
·
Study/백준
https://www.acmicpc.net/problem/9012   문제괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’와 ‘)’ 만으로 구성되어 있는 문자열이다. 그중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )” 문자열은 기본 VPS이라고 부른다. 만일 x 가 VPS 라면 이것을 하나의 괄호에 넣은 새로운 문자열 “(x)”도 VPS 가 된다. 그리고 두 VPS x와 y를 접합(concatenation)시킨 새로운 문자열 xy도 VPS 가 된다. 예를 들어 “(())()”와 “((()))” 는 VPS이지만 “(()(”, “(())()))” , 그리고 “(()” 는 모두 VPS..
[백준] 1932번: 정수 삼각형 (C++) | Dynamic Programming
·
Study/백준
https://www.acmicpc.net/problem/1932 1932번: 정수 삼각형 첫째 줄에 삼각형의 크기 n(1 ≤ n ≤ 500)이 주어지고, 둘째 줄부터 n+1번째 줄까지 정수 삼각형이 주어진다. www.acmicpc.net 처음으로 풀어보는 DP문제!! DP는 수업시간에 이론으로만 접해봤기에 아직 구현은 감을 못잡은 느낌,, DP 연습문제 중에 가장 정답률 높은 이 친구부터 풀어보기로 결정,, Bottom Up 방식 아래에서부터 두 개 중 더 큰 값을 위에 더해주며 끝까지 올라가면, 최종적으로 s[0][0]이 정답이 된다. #include #include using namespace std; int main() { long long int n; cin >> n; vector s(n, ve..
[백준] 17087번: 숨바꼭질 6 (C++)
·
Study/백준
https://www.acmicpc.net/problem/17087 17087번: 숨바꼭질 6 수빈이는 동생 N명과 숨바꼭질을 하고 있다. 수빈이는 현재 점 S에 있고, 동생은 A1, A2, ..., AN에 있다. 수빈이는 걸어서 이동을 할 수 있다. 수빈이의 위치가 X일때 걷는다면 1초 후에 X+D나 X-D로 이 www.acmicpc.net 수빈이와 동생들과의 거리를 구하고 거리들의 최대공약수를 구해주면 된다. gcd함수가 어느 라이브러리에 있었는지 기억이 안나서 구현해서 풀었다. #include #include using namespace std; int gcd(int n, int m) { if (n < m) { int temp = n; m = n; n = temp; } if (m == 0) { re..
[자료구조] Priority Queue 부터 Hash Table 까지
·
Study/자료구조
Priority Queue item들을 짝으로 저장한다. (key, value) - method : add(k, x), remove_min() remove_min() : 가장 작은 키값을 가진 아이템을 지우고 리턴한다.(sorting 전제) min() : 가장 작은 키값을 가진 아이템을 리턴만 한다. len(P), is_empty() 등등 * two distinct entries in a priority queue can have the same key Sequence-based Priority Queue - unsorted list : add : O(1) / Remove_min & min : O(n) - sorted list: add : O(n) / Remove_min & min : O(1) Prior..
[자료구조] Recursion 재귀
·
Study/자료구조
Recursion : when a method call itself 자기자신을 불러 반복하여 결과 값을 업데이트하는 것 loop문 없이 본인을 호출하여 반복문이 된다. 끝에 도달하면 return하는 값이 정해져있다. 표현법이 단순하고, 복잡한 문제를 간단하게 해결할 수 있다. but, 이해하는게 어려울 수 있다. 재귀로 간단하게 해결할 순 있지만 쉬운건 아님!!!! Base case : Values of the input variables for which we perform no recursion calls are called base cases (there should be at least one base case). : Every possible chain of recursive calls must..
[자료구조] 다중 트리(일반 트리)의 조상을 찾는 문제 (C++)
·
Study/자료구조
문제 N개의 노드로 구성된 트리가 입력으로 주어진다. 이때, 각 노드는 1번부터 N번까지 서로 다른 번호로 구분되며, 트리의 루트는 1이다. 노드 v의 조상(ancestor)은 노드 v부터 루트까지의 경로 상에 있는 노 드이다. 노드의 번호를 입력으로 받아, 해당 노드의 모든 조상들을 공백으로 구분하여 출력하는 프로그램을 작성하시오. 예제 입출력 예제 입력 예제 출력 10 4 1 2 1 3 1 4 2 5 3 6 3 7 6 8 6 9 6 10 4 8 5 9 1 6 3 1 2 1 6 3 1 가장 처음으로 트리를 구현해봤던 건데 이제서야 올린다. 딱히 어떤 순회나 탐색을 써야겠다고 생각하고 구현한건 아니고 그냥 순서대로 찾기... row index가 부모이고 column index가 자식이다. 트리 벡터의 r..
[자료구조] class node로 트리 구현 (일반 트리, 다중 트리) (C++)
·
Study/자료구조
구현한 내용은 아래와 같다. 정수를 저장하는 트리를 구현한 뒤, 입력으로 주어지는 명령어를 처리하는 프로그램을 작성하시오. 트리의 루트는 항상 1이며, 초기 상태의 트리에 1이 삽입되어 있다. 명령어는 다음과 같이 총 5가지 이다. insert x y: 노드 y를 노드 x(1 ≤ x ≠ y ≤ 10,000)의 자식으로 트리에 삽입한다. 만약 y가 이미 트리에 존재하거나, x가 트리에 존재하지 않을 경우, -1을 출력한다. delete x: 트리에서 노드 x(2 ≤ x ≤ 10,000)를 삭제한다. x의 자식 노드는 모두 x의 부모 노드의 자식으로 차례로 연결한다. 만약 노드 x가 트리에 존재하지 않을 경우, -1을 출력한다. parent x: 노드 x(2 ≤ x ≤ 10,000)의 부모 노드를 출력한다...
[선형대수학] Chapter 2 : Determinants 정리
·
Study/선형대수학
det(kA) = k^n det(A) det(A+B) =/= det(A) + det(B) cf. **det(EB) = det(E)det(B) 이때, 행렬 A는 E_1*E_2*E_3 ... E_r 로 나타낼 수 있으므로 det(AB) = det(A)det(B) 이로 인해서 AB =/= BA 이지만, det(AB)=det(BA)가 성립한다. Adjoint of a Matrix (수반행렬) : cofactor 행렬의 전치행렬 (adj(A)로 표시) 행렬식을 구할 때, 한 행이나 열을 선택하고 그에 맞는 cofactor와 곱하여 구한다. 그런데 행이나 열에 맞지 않는 다른 cofactor를 곱하면 값은 항상 0이 나온다. 예를 들어 첫 번째 행과 두 번째 행의 cofactor를 곱하면 항상 0이 나온다. → 위..