코드를 중단시킬때 break보다 exit(0)을 쓰면 출력 초과가 나지 않는다. 합집합 찾기(Union-Find)알고리즘 원소들의 연결 여부를 확인하는 알고리즘이다. (그림 가정) 더 작은 원소를 부모로 삼도록 설정 처음엔 모두 자기가 자기를 가리키고 있다. 1-
메소드는 클래스에 포함되어 있는 함수를 가리킵니다. 함수를 클래스 안으로 가져오려면 그 함수를 클래스 안에 넣어 들여쓰고, 메소드의 첫 번째 인자를 self로 변경해야 합니다. 예를 들어, 특수한 메소드
*divmod() -> 목과 나머지를 구해준다. 작은 숫자를 다룰 때는 a//b, a%b 보다 느리지만, 큰 수를 다룰 때는 divmod가 더 빠르다. int(value, radix) -> int함수의 인자로 문자열 value, 와 radix를 넣으면 radix진수의
BFS : 너비우선탐색 -> Queue DFS : 깊이우선탐색 -> Recursion or Stack 파이썬은 재귀 메모리가 적기때문에 재귀깊이가 너무 깊어지면 문제가 풀리지 않거나 시간초과가 날 수 있다. 문제를 잘 읽고 둘 중에 잘 선택해야한다. 부분 상태 탐색
크레인 인형뽑기 게임 1. 2차원 배열에서 index를 잡아주고 index value가 0이 아니면 bucket에 넣은 뒤 bucket에 인형이 다 쌓이면 인접한 숫자끼리 제거하는 식의 로직 > 여기서 if bucket[-1] == bucket[-2]로 하면
.append() : 리스트의 맨 마지막에 원소 추가 .pop() : 리스트의 맨 마지막 원소 제거 리스트의 길이와 무관하게 상수시간(O(1))에 연산 가능 .insert(index, val): 원하는 위치 index에 원하는 val 추가 .del(val) : va
list 자료형은 '-'와 같은 차집합 연산이 지원되지 않는 반면, set자료형은 '-'와 같은 기호를 이용해 각 집합별 차집합을 수행할 수 있다. set자료형은 중복을 없애준다. s = 'abcde' print(s[::-1]) # 'edcba' [::-1]은 문