2025/02/20 5

2567. 색종이 - 2

https://www.acmicpc.net/problem/2567 ✅예시로 주어진 케이스에서는 반례가 없습니다. 반례를 찾는 연습을 해보세요!import syssys.stdin = open('input.txt')input = sys.stdin.readlineN = int(input()) # 색종이의 수board = [[0]*100 for _ in range(100)]paper = []for _ in range(N): x,y = map(int,input().split()) paper.append([y,x]) # 어차피 배열이 상하 반전되도 똑같음 상관 X#-------------------------------------------------# 1. 색종이 붙이기#-----------------..

Baekjoon 2025.02.20

Adjacency List (인접 리스트)

✅ 인접 리스트 (Adjacency List) 1️⃣ 인접 리스트의 특징그래프를 표현하는 또 다른 방법으로, 연결된 노드만 저장하는 방식입니다.메모리 효율적: 필요한 간선만 저장하므로 **공간 복잡도가 O(N + E)**로 줄어듭니다.연결 여부 확인 속도가 느림: 특정 두 노드가 연결되었는지 확인하려면 리스트를 탐색해야 하므로 O(N)의 시간이 걸립니다.✅ 장점:메모리를 절약할 수 있음 (O(N + E)) → 불필요한 공간 낭비 없이 저장 가능노드가 많고 간선이 적은 경우(희소 그래프)에 유리❌ 단점:특정 노드 간 연결 여부 확인 속도가 느림 (O(N))구현이 다소 복잡할 수 있음  2️⃣ 인접 리스트 예제 (양방향 그래프)다음과 같은 그래프를 인접 리스트로 표현해보겠습니다.예제 그래프 (0) --..

Adjeacency Matrix (인접 행렬)

✅ 인접 행렬 (Adjacency Matrix)인접 행렬의 특징그래프를 표현하는 방법 중 하나로, 2차원 리스트(배열)을 사용하여 노드 간의 연결 정보를 저장하는 방식입니다.노드 개수가 N개라면, N x N 크기의 행렬을 사용합니다.graph[i][j] = 1이면 i번 노드에서 j번 노드로 갈 수 있음을 의미합니다.무방향 그래프의 경우 graph[i][j] == graph[j][i]가 항상 성립합니다.✅ 장점:연결 여부를 빠르게 확인 가능 (O(1)) → 특정 노드 간의 연결을 빠르게 조회할 수 있습니다.구현이 직관적 → 2차원 배열을 사용하기 때문에 접근이 쉬움❌ 단점:메모리를 많이 사용 (O(N^2)) → 노드 수가 많아지면 메모리 낭비가 심함간선 개수가 적은 경우 비효율적 → 사용하지 않는 공간이 ..

Graph ( 그래프 )

✅Graph(그래프)그래프(Graph)는 노드(Node, 정점)와 간선(Edge, 연결선)으로 이루어진 자료구조입니다. 이는 현실 세계의 관계를 모델링하는 데 많이 사용됩니다. 예를 들어,SNS 친구 관계 → 사람(노드)들이 친구(간선)로 연결지하철 노선도 → 역(노드)들이 선(간선)으로 연결지도 네비게이션 → 도시(노드)들이 도로(간선)로 연결그래프는 탐색 알고리즘을 사용해 특정 노드를 찾거나, 최단 경로를 구할 수 있습니다. 대표적인 탐색 방법으로 DFS(깊이 우선 탐색)과 BFS(너비 우선 탐색)이 있습니다.1️⃣ 그래프의 기본 요소그래프는 두 가지 주요 요소로 구성됩니다.노드(Node, 정점): 데이터를 저장하는 기본 단위입니다.간선(Edge): 노드 간의 관계를 나타내는 연결선입니다.🔹 노드(..

10709. 기상캐스터

https://www.acmicpc.net/problem/10709 ✅ 반복할때 마다 카운트를 올리되 특정 조건을 만나면 초기화 해서 다시하는 구조입니다.# 행 개수(H)와 열 개수(W) 입력받기H, W = map(int, input().split())# 하늘 상태를 2차원 리스트로 저장arr = [list(input().strip()) for _ in range(H)]# 결과 배열을 -1로 초기화 (기본적으로 구름 없음)result = [[-1] * W for _ in range(H)]# 각 행을 순회하며 구름이 어디 있는지 찾기for y in range(H): time = -1 # 현재 구름이 도착하는 시간 (-1이면 아직 구름 없음) for x in range(W): # 구..

Baekjoon 2025.02.20