한 줄에 여러 개 입력받기Python 문제를 해결하다 보면, 한 줄에 여러 개의 입력을 받아야 하는 경우가 생긴다. 그러나 Python은 개행('\n')을 하나의 입력으로 인식하기 때문에 '5 4 1 3 2', '7 3'과 같이 인식한다. 이때, map 함수와 split 함수를 활용하면 각각의 정수로 분리하여 여러 개의 변수에 저장할 수 있다.한 줄에 여러 개 입력받기한 줄에 여러 개 입력을 받는 형태를 살펴본 후에 map과 split 함수에 대해 알아본다. 관련 자료를 찾다가 사용 예시가 있어서 가져왔다.예시 출처# 1. 값 두 개를 입력받아 변수 a와 b에 저장 (띄어쓰기 구분)a, b = input().split() # 문자열a, b = map(int, input().split()) # 정수형a, ..
힙(Heap)이란?힙(Heap)이란 최댓값/최솟값을 빠르게 찾기 위해 고안되었으며, 루트 노드가 언제나 최댓값(최대 힙) 또는 최솟값(최소 힙)을 가지는 완전 이진트리(Complete Binary Tree)이다. 일반적인 리스트를 활용하여 최댓값/최솟값을 찾기 위한 max()/min() 함수의 시간 복잡도는 O(n)이다. 그러나 힙을 사용하면 O(log n)으로 수행이 가능하며, 정렬도 O(n log n)의 빠른 속도로 가능하다. 연산에 대한 자세한 이해보다는 힙에 대한 개념과 파이썬에서 활용할 수 있는 방법을 이해하는 것을 목표로 한다. 완전 이진 트리(Complete Binary Tree)마지막 레벨(Level)을 제외한 모든 레벨은 완전히 채워져 있는 이진트리이다. 삽입 연산을 수행할 경우 마지막 ..
enumerate() 함수란?python의 유용한 내장 함수 중 하나는 enumerate 함수이다. 활용 반복 가능한 객체 및 순서가 있는 자료형(list, set, tuple, dictionary, string)을 입력으로 하여 인덱스와 값을 동시에 튜플 형태로 반환해 준다.def enumerate(iterable, start=0): n = start for elem in iterable: yield n, elem n += 1함수 형태 및 사용반복 가능한 객체 iterable과 인덱스 시작 값인 start를 인자로 입력한다. start의 기본값은 0이기 때문에 start 없이 iterable만 입력하더라도 오류 없이 동작한다.enumerate(iterable, st..