목록전체 글 (145)
공부 기록장
https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net 코드 from collections import deque t = int(input()) dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] def bfs(x, y): queue = deque([(x, y)]) mat[x][y] = 0 while queue: x, y = queue.popleft() for i in range(4): nx = x + dx[i] ny = y + dy[i] if n..
https://www.acmicpc.net/problem/11724 11724번: 연결 요소의 개수 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다. (1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주어 www.acmicpc.net 코드 import sys sys.setrecursionlimit(10 ** 6) input = sys.stdin.readline n, m = map(int, input().split()) graph = [[] for _ in range(n+1)] visited = [False] * (n+1) for _ in range(m): u, v..
https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 코드 from collections import deque n = int(input()) con = int(input()) graph = [[] for i in range(n+1)] for _ in range(con): a, b = map(int, input().split()) graph[a].append(b) graph[b].append(a) # 무방향 그래프, graph[a], graph[b]에 동..
https://www.acmicpc.net/problem/1744 1744번: 수 묶기 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 www.acmicpc.net 코드 n = int(input()) plus = [] minus = [] total = 0 for i in range(n): num = int(input()) if num > 1: plus.append(num) elif num = len(plus): total += plus[i] else: total += (plus[i] * plus[i+1]) for i in range(0, len(minus)..