본문 바로가기

Algorithm475

[파이썬] 백준 11286 : 절댓값 힙 (실버1) [파이썬] 백준 11286 : 절댓값 힙 (실버1) 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 풀이 0.방향성 생각 하나의 리스트에서 정렬하는 것 보다 양수, 음수 리스트로 나눠서 정렬하는게 일반적으로 동작이 빠르다. 양수부분에서는 최소 힙, 음수 부분에서는 최대 힙을 구현한다. 1. 전체코드 import heapq import sys input = sys.stdin.readline t = int(input()) p_heap,m_heap = [],[] for i in range(.. 2023. 6. 4.
[파이썬] 백준 11279,11286 : 최대 힙, 최소힙 (실버2) [파이썬] 백준 11279,11286 : 최대 힙, 최소힙 (실버2) 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 문제 풀이 0.방향성 생각 최대힙 입력값이 0 이상의 정수인 경우의 최대 힙이므로 입력값을 음수로 넣고 정렬.. 2023. 6. 4.
[파이썬] 백준 1260 : DFS와 BFS (실버2) [파이썬] 백준 1260 : DFS와 BFS (실버2) 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 문제 풀이 0.방향성 생각 탐색 시 순번이 낮은 노드부터 탐색하므로 입력을 받은 후 정렬하는 과정이 필요함 1. 입력 from collections import deque import sys input = sys.stdin.readline node,line,start = map(int,input().split()) arr = [[] for i in range(node+1.. 2023. 6. 3.
[파이썬] 백준 16928 : 뱀과 사다리 게임 (골드5) [파이썬] 백준 16928 : 뱀과 사다리 게임 (골드5) 16928번: 뱀과 사다리 게임 첫째 줄에 게임판에 있는 사다리의 수 N(1 ≤ N ≤ 15)과 뱀의 수 M(1 ≤ M ≤ 15)이 주어진다. 둘째 줄부터 N개의 줄에는 사다리의 정보를 의미하는 x, y (x 5 # 8 52 # 6 80 # 26 42 # 2 72 # 51 19 # 39 11 # 37 29 # 81 3 # 59 5 # 79 23 # 53 7 # 43 33 # 77 21 # 1 1 --> 3 # 13 99 # 8 7 # 1 5 --> 4 # 2 92 # 94 3 # 95 4 # 96 5 # 97 6 # 98 7 풀.. 2023. 6. 3.