[BFS] python 14503 로봇 청소기
https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net # 2023.01.26 import sys input = sys.stdin.readline from collections import deque n, m = map(int, input().split()) # 세로, 가로 r, c, d = map(int, input().split()) # 좌표, 바라보는 방향 {0: 북쪽, 1: 동쪽, 2: 남쪽, 3: 서쪽} graph = [list(map(in..
2023. 1. 26.
[BFS] python 5014 스타트링크
https://www.acmicpc.net/problem/5014 5014번: 스타트링크 첫째 줄에 F, S, G, U, D가 주어진다. (1 ≤ S, G ≤ F ≤ 1000000, 0 ≤ U, D ≤ 1000000) 건물은 1층부터 시작하고, 가장 높은 층은 F층이다. www.acmicpc.net # 2023.01.24 import sys input = sys.stdin.readline from collections import deque # 총 f층, 지금 s층, 원하는 g층, 위로 u층 이동, 아래로 d층 이동 f, s, g, u, d = map(int, input().split()) visited=[False]*(f+1) # 방문여부 stair=[0]*(f+1) queue=deque() # 너비 ..
2023. 1. 24.
[DFS] python 2644 촌수계산
https://www.acmicpc.net/problem/2644 2644번: 촌수계산 사람들은 1, 2, 3, …, n (1 ≤ n ≤ 100)의 연속된 번호로 각각 표시된다. 입력 파일의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야 하는 서로 다른 두 사람의 번호가 주어 www.acmicpc.net # 2023.01.23 import sys input = sys.stdin.readline n = int(input()) a, b = map(int, input().split()) # start, end m = int(input()) graph = [[] for _ in range(n+1)] # n명의 사람들 for _ in range(m): x, y = map(int, inp..
2023. 1. 23.