from collections import Counter
메서드 | 설명 |
---|---|
elements() | 카운터 객체 내의 요소를 카운트된 횟수만큼 반복해서 반환하는 이터레이터 생성 |
most_common(n) | 가장 빈번하게 등장하는 n개의 요소와 그 횟수를 리스트로 반환 |
subtract(iter) | 이터러블 또는 매핑의 데이터를 카운터 객체에서 빼기 연산 수행 |
update(iter) | 이터러블 또는 매핑의 데이터를 카운터 객체에 더하기 연산 수행 |
+ | 두 카운터 객체의 요소 별 합을 반환한다. 동일한 요소의 경우 개수가 더해진다. |
- | 두 카운터 객체의 요소 별 차를 반환한다. 동일한 요소의 경우 개수가 차감된다. |
& | 두 카운터 객체의 교집합을 반환한다. 동일한 요소의 경우 개수가 작은 것이 선택된다. |
마크다운 오류 | 두 카운터 객체의 합집합을 반환한다. 동일한 요소의 경우 개수가 큰 것이 선택된다. |
마크다운 오류 => |
ex. union = list((counter1 | counter2).elements())
수치 데이터를 다루기 위한 파이썬 라이브러리로, 다차원 배열과 행렬 연산을 효과적으로 수행할 수 있게 해준다.
함수/메서드 | 설명 |
---|---|
numpy.array() | 주어진 데이터로부터 배열을 생성 |
numpy.arange() | 지정한 범위와 간격으로 배열 생성 |
numpy.linspace() | 지정한 범위 내에서 균등하게 간격을 둔 숫자를 생성 |
numpy.zeros() | 지정한 형태와 타입의 0으로 채워진 배열 생성 |
numpy.ones() | 지정한 형태와 타입의 1로 채워진 배열 생성 |
numpy.empty() | 초기화되지 않은 값으로 채워진 배열 생성 |
numpy.full() | 지정한 형태와 타입의 특정 값으로 채워진 배열 생성 |
numpy.random.random() | 랜덤한 값으로 채워진 배열 생성 |
numpy.reshape() | 배열의 형태를 변경 |
numpy.transpose() | 배열의 축을 전치 (Transpose) |
numpy.dot() | 두 배열의 내적 계산 |
numpy.sum() | 배열의 요소 합계 계산 |
numpy.mean() | 배열의 평균값 계산 |
numpy.std() | 배열의 표준 편차 계산 |
numpy.var() | 배열의 분산 계산 |
numpy.min() | 배열의 최소값 찾기 |
numpy.max() | 배열의 최대값 찾기 |
numpy.argmin() | 배열의 최소값 인덱스 찾기 |
numpy.argmax() | 배열의 최대값 인덱스 찾기 |
numpy.concatenate() | 두 개 이상의 배열을 연결 |
numpy.split() | 배열을 여러 하위 배열로 분할 |
numpy.sin() , numpy.cos() 등 | 수학적 함수를 배열의 각 요소에 적용 |
문제 | 라이브러리/메서드 | 설명 | 사용 예시 |
---|---|---|---|
루돌프의 반란 | NumPy | 고성능 수치 계산을 위한 라이브러리. 다차원 배열을 효율적으로 처리할 수 있음. | import numpy as np grid = np.array(...) |
Collections | 다양한 컨테이너 데이터 타입을 제공. deque 는 양쪽 끝에서 빠르게 데이터를 추가하거나 제거할 수 있는 리스트형 컨테이너. | from collections import deque queue = deque(...) | |
itertools | 반복 가능한 데이터 스트림을 처리하는 데 사용되는 여러 함수 및 생성자를 제공. | from itertools import permutations for perm in permutations(...): | |
math | 수학적 연산을 위한 함수를 제공. | import math distance = math.sqrt(...) | |
왕실의 기사 대결 | NumPy | 2차원 격자 관리 및 계산. | import numpy as np board = np.array(...) |
Collections | 기사의 위치, 상태 관리에 사용. | from collections import deque knight_positions = deque(...) | |
메이즈 러너 | NumPy | 미로와 참가자 위치 관리. | import numpy as np maze = np.array(...) |
Collections | 참가자의 이동과 상태 관리. | from collections import deque participants = deque(...) | |
itertools | 미로 회전 시 다양한 경우의 수 계산에 사용. | from itertools import combinations for combo in combinations(...): | |
포탑 부수기 | NumPy | 격자 기반 데이터 관리. | import numpy as np grid = np.array(...) |
Collections | 포탑 상태 추적. | from collections import deque turrets = deque(...) | |
itertools | 다양한 조건에 따른 순열 및 조합 계산. | from itertools import product for coords in product(...): | |
heapq | 최소/최대 힙 구조를 통해 가장 약한/강한 포탑 선정. | import heapq heapq.heappush(...) weakest = heapq.heappop(...) |
import numpy as np
후, np.array(...)
등의 방법으로 배열 생성 및 조작.from collections import deque
후, deque([...])
로 생성. .append()
, .pop()
, .popleft()
, .appendleft()
등으로 조작.from itertools import permutations
후, permutations(iterable, r)
형태로 사용. iterable
은 순열을 생성할 대상, r
은 순열 길이.import math
후, math.sqrt(x)
형태로 사용. x
는 제곱근을 구할 숫자.import heapq
후, heapq.heappush(heap, item)
, heapq.heappop(heap)
등의 함수 사용. 리스트를 힙으로 사용 가능.