본문 바로가기

백준19

[백준][파이썬]11403번: 경로 찾기 문제 출처 : www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net 내 풀이 각 정점마다 dfs를 돌면서 연결된 정점을 check에 방문처리해 준 후에 출력하도록 코드를 짰다. import sys input = sys.stdin.readline def dfs(v): for i in range(n): if check[i] == 0 and arr[v][i] == 1: check[i] = 1 dfs(i) n = int(input()) arr = [] for i in range(n): arr.append(list.. 2021. 4. 12.
[백준][파이썬]2775번: 부녀회장이 될테야 문제 출처 : www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 내 풀이 직접 그려보며 확인해본 결과 k층 n호에 사는 사람의 수는 (k층 n - 1 호에 사는 사람의 수) + (k - 1층 n호에 사는 사람의 수) 라는 규칙이 나왔다. import sys input = sys.stdin.readline t = int(input()) for i in range(t): k = int(input()) n = int(input()) arr = [[i for i in range(n + 1)] for _ in.. 2021. 4. 11.
[백준][파이썬]11724번: 연결 요소의 개수 문제 출처 : 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 내 풀이 1차 (시간초과) n, m = map(int, input().split()) arr = [[0] * n for _ in range(n)] visit = [0] * n answer = 0 def bfs(num): k = [num] while k: a = k.pop(0) for i in range(n): if arr[a][i] =.. 2021. 4. 7.
[백준][파이썬]1966번: 프린터 큐 문제 출처 : www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 내 풀이 from collections import deque k = int(input()) for i in range(k): arr = deque() answer = 0 cnt = 0 n, m = map(int, input().split()) doc = list(map(int, input().split())) for i in range(n): arr.append((doc[i], i)) doc.sor.. 2021. 4. 7.