백준(Python) 풀이/구현 139

백준(Python) 20058번 마법사 상어와 파이어스톰 풀이

Python으로 구현한 20058번 마법사 상어와 파이어스톰 문제 풀이입니다. https://www.acmicpc.net/problem/20058 20058번: 마법사 상어와 파이어스톰 마법사 상어는 파이어볼과 토네이도를 조합해 파이어스톰을 시전할 수 있다. 오늘은 파이어스톰을 크기가 2N × 2N인 격자로 나누어진 얼음판에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c www.acmicpc.net from collections import deque n, q = map(int, input().split()) data = [list(map(int, input().split())) for _ in range(2 ** n)] l = list(map(int, input().split())) max_l..

백준(Python) 20056번 마법사 상어와 파이어볼 풀이

Python으로 구현한 20056번 마법사 상어와 파이어볼 문제 풀이입니다. https://www.acmicpc.net/problem/20056 20056번: 마법사 상어와 파이어볼 첫째 줄에 N, M, K가 주어진다. 둘째 줄부터 M개의 줄에 파이어볼의 정보가 한 줄에 하나씩 주어진다. 파이어볼의 정보는 다섯 정수 ri, ci, mi, si, di로 이루어져 있다. 서로 다른 두 파이어볼의 위치 www.acmicpc.net from collections import deque dx = [-1, -1, 0, 1, 1, 1, 0, -1] dy = [0, 1, 1, 1, 0, -1, -1, -1] n, m, k = map(int, input().split()) q = deque() data = [[deque..

백준(Python) 17779번 게리맨더링 2 풀이

Python으로 구현한 17779번 게리맨더링 2 문제 풀이입니다. https://www.acmicpc.net/problem/17779 17779번: 게리맨더링 2 재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름 www.acmicpc.net n = int(input()) data = [[0] * (n + 1)] + [[0] + list(map(int, input().split())) for _ in range(n)] total = 0 for i in range(1, n + 1) : total += sum(data[i]) def solution(x, y, d1, d2) : ..

백준(Python) 17142번 연구소 3 풀이

Python으로 구현한 17142번 연구소 3 문제 풀이입니다. https://www.acmicpc.net/problem/17142 17142번: 연구소 3 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 바이러스는 활성 상태와 비활성 상태가 있다. 가장 처음에 모든 바이러스는 비활성 상태이고 www.acmicpc.net from collections import deque import copy n, m = map(int, input().split()) graph = [] virus = [] result = int(1e9) # 상 하 좌 우 dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] for i in range(n) : data = li..

백준(Python) 17140번 이차원 배열과 연산 풀이

Python으로 구현한 17140번 이차원 배열과 연산 문제 풀이입니다. https://www.acmicpc.net/problem/17140 17140번: 이차원 배열과 연산 첫째 줄에 r, c, k가 주어진다. (1 ≤ r, c, k ≤ 100) 둘째 줄부터 3개의 줄에 배열 A에 들어있는 수가 주어진다. 배열 A에 들어있는 수는 100보다 작거나 같은 자연수이다. www.acmicpc.net r, c, k = map(int, input().split()) data = [list(map(int, input().split())) for _ in range(3)] time = 0 def is_k() : if r-1 < len(data) and c-1 < len(data[0]) : if data[r-1][c..

백준(Python) 16235번 나무 재테크 풀이

Python으로 구현한 16235번 나무 재테크 문제 풀이입니다. https://www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net from collections import deque n, m, k = map(int, input().split()) A = [list(map(int, input().split())) for _ in range(n)] graph = [[5] * n for _ in range(n)] trees = [[deque() f..

백준(Python) 17144번 미세먼지 안녕! 풀이

Python으로 구현한 17144번 미세먼지 안녕! 문제 풀이입니다. https://www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net r, c, t = map(int, input().split()) room = [list(map(int, input().split())) for _ in range(r)] front = 0 back = 0 # 공기 청정기 위치 확인 for i in range(r) : if room[i][0] == -1 : front = i ba..

백준(Python) 15685번 드래곤 커브 풀이

Python으로 구현한 15685번 드래곤 커브 문제 풀이입니다. https://www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커 www.acmicpc.net # 0 : ->, 1 : ↑, 2 :

백준(Python) 15684번 사다리 조작 풀이

Python으로 구현한 15684번 사다리 조작 문제 풀이입니다. https://www.acmicpc.net/problem/15684 15684번: 사다리 조작 사다리 게임은 N개의 세로선과 M개의 가로선으로 이루어져 있다. 인접한 세로선 사이에는 가로선을 놓을 수 있는데, 각각의 세로선마다 가로선을 놓을 수 있는 위치의 개수는 H이고, 모든 세로선 www.acmicpc.net n, m, h = map(int, input().split()) visited = [[False] * (n + 1) for _ in range(h + 1)] data = [] for _ in range(m) : a, b = map(int, input().split()) visited[a][b] = True def check() :..

백준(Python) 15683번 감시 풀이

Python으로 구현한 15683번 감시 문제 풀이입니다. https://www.acmicpc.net/problem/15683 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감 www.acmicpc.net import copy n, m = map(int, input().split()) office = [] cctv = [] case = [ [], [[0], [1], [2], [3]], [[0, 2], [1, 3]], [[0, 1], [1, 2], [2, 3], [0, 3]], [[0, 1, 2], [0, 1, 3], [1, 2, ..