728x90
안녕하세요. 개발감자 박그냥입니다!🥔
오늘은 코딩 테스트에서 가장 기본적인 파이썬 코드를 정리해보도록 하겠습니다.
제가 공부하면서 계속 업데이트할 예정입니다 ㅎㅎ
1. 입력받을 때
import sys
N = int(input()) # 하나만 입력 받을 때
M, K = map (int, input().split()) # 2개를 한 번에 입력 받을 때
A = list(input()) # 공백없이 입력받아 리스트로 저장할 때
A = list(map (int, input().split())) # 공백 포함해 입력받아 리스트로 저장할 때
2. 2차원 리스트 생성하는 방법 (행 4 열 3인 리스트 생성하는 예시)
A = [[0 for col in range(4)] for row in range(3)]
3. 파이썬에서 형 변환
int(data) # float, bool 변환 가능
float(data) # int, bool 변환 가능
str(data) # int, bool. float, chr 변환 가능
chr(data) # int, bool 변환 가능
bool(data) # int, float, str, chr 변환 가능
bool(data)의 경우 데이터가 0인지 아닌지(Int, float)에 따라, 값이 비어있는지 아닌지(str, chr) 에 따라 True False를 반환합니다.
4. 누적합 구하기
numbers = list(map(int, input().split()))
prefix_sum = [0] # 누적합 담을 리스트
temp = 0
for num in numbers:
temp += num
prefix_sum.append(temp)
5. 절댓값 구하기
a = abs(data) # data의 절댓값을 a에 저장한다
6. 큐와 우선순위 큐 구현하기
1) 큐
from collections import deque
# 빈 리스트를 이용한 큐 생성
queue = []
# 큐에 요소 추가 (enqueue)
queue.append(1)
queue.append(2)
queue.append(3)
# 큐에서 요소 제거 (dequeue)
print(queue.pop(0)) # 출력: 1
# 큐가 비어있는지 확인
print(len(queue) == 0) # 출력: False
2) 우선순위 큐
from queue import PriorityQueue
# 우선순위 큐 생성
pq = PriorityQueue()
# 요소 추가
pq.put((3, "Apple"))
pq.put((1, "Banana"))
pq.put((2, "Orange"))
# 요소 제거
print(pq.get()) # 출력: (1, 'Banana')
# 제거하는 값 입력받기
a, b = pq.get() # a = 2, b = 'Orange'
7. recursionError(런타임 에러) 발생 시 해결 방법
sys.setrecursionlimit(10**6) # 예: 최대 재귀 호출 횟수를 10^6으로 설정
728x90
반응형
'알고리즘' 카테고리의 다른 글
[알고리즘 마스터] 11. 슬라이딩 윈도우 (1) | 2024.01.07 |
---|---|
[알고리즘 마스터] 10. 투 포인터 (1) | 2024.01.05 |
[알고리즘 마스터] 9. 그래프 알고리즘 정리 (유니온 파인드, 위상정렬, 최단거리 알고리즘) (1) | 2023.12.29 |
[알고리즘 마스터] 8. 그리디 알고리즘 (Greedy) (1) | 2023.12.28 |
[알고리즘 마스터] 7. 이진 탐색 (Binary Search) (1) | 2023.12.27 |