알고리즘 33

[python]백준 2606번: 바이러스(BFS)

# 2606 바이러스 https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 코드 from collections import deque n = int(input()) v = int(input()) graph = [[] for i in range(n+1)] visited = [0] * (n+1) for i in range(v): a, b = map(int, input().split()) graph[a] += [b] graph[b] += [a] visited[..

Algorithm 2023.01.01

[python]백준 2606번: 바이러스(DFS)

# 2606 바이러스 https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net 코드 N = int(input()) C = int(input()) graph = [[] for i in range(N+1)] visited = [0] * (N+1) for i in range(C): a, b = map(int, input().split()) graph[a].append(b) graph[b].append(a) def dfs(M): visited[M] = 1 for n..

Algorithm 2022.12.31

[python]백준 1931번: 회의실 배정(그리디 알고리즘)

# 1931 회의실 배정 https://www.acmicpc.net/problem/1931 1931번: 회의실 배정 (1,4), (5,7), (8,11), (12,14) 를 이용할 수 있다. www.acmicpc.net 풀이 N = int(input()) list_ = [] for i in range(N): a,b = map(int, input().split()) # 시작시간, 끝나는 시간 list_.append([a,b]) list_.sort(key=lambda x:(x[1], x[0])) # 끝나는 시간을 기준으로 정렬, 시작 시간을 기준으로 정렬 last = 0 count = 0 for i, j in list_: # 시작과 끝 시간 if i >= last: # 끝나는 시간보다 시작시간이 클 경우 c..

Algorithm 2022.12.29
728x90