본문 바로가기

분류 전체보기154

[Python] 백준 1194번: 달이 차오른다, 가자. https://www.acmicpc.net/problem/1194 1194번: 달이 차오른다, 가자. 첫째 줄에 미로의 세로 크기 N과 가로 크기 M이 주어진다. (1 ≤ N, M ≤ 50) 둘째 줄부터 N개의 줄에 미로의 모양이 주어진다. 같은 타입의 열쇠가 여러 개 있을 수 있고, 문도 마찬가지이다. 그리고, www.acmicpc.net 1. 각키마다 배열로 설정해주어 키를 가지고있을때와 그렇지않을때를 구분해두었다. 2. 다음 가는곳이 가능한곳인지 isPossible함수로 판별해주었다. from collections import deque input = sys.stdin.readline dx, dy = [0, 1, 0, -1], [1, 0, -1, 0] q = deque() n, m = map(int.. 2021. 11. 19.
[Python] 백준 2250번: 트리의 높이와 너비 https://www.acmicpc.net/problem/2250 2250번: 트리의 높이와 너비 첫째 줄에 노드의 개수를 나타내는 정수 N(1 ≤ N ≤ 10,000)이 주어진다. 다음 N개의 줄에는 각 줄마다 노드 번호와 해당 노드의 왼쪽 자식 노드와 오른쪽 자식 노드의 번호가 순서대로 주어진다. www.acmicpc.net input = sys.stdin.readline n = int(input()) tree = [[] for _ in range(n+1)] childNode = [[0, 0] for _ in range(n+1)] node = [[] for _ in range(n+1)] ans = [-1, -1] root = [i for i in range(1, n+1)] for _ in range(.. 2021. 11. 18.
[Python] 백준 10422번: 괄호 https://www.acmicpc.net/problem/10422 10422번: 괄호 ‘(‘, ‘)’ 문자로만 이루어진 문자열을 괄호 문자열이라 한다. 올바른 괄호 문자열이란 다음과 같이 정의된다. ()는 올바른 괄호 문자열이다. S가 올바른 괄호 문자열이라면, (S)도 올바른 괄호 www.acmicpc.net '(' 괄호는 +1, ')' 괄호는 -1 로 계산하면 된다. 음수가 될경우 괄호가 아니므로 양수일때만 연산해준다. 0 1 2 3 4 5 6 7 8 1 1 2 1 1 3 2 1 4 2 3 1 5 5 4 1 6 5 9 5 1 7 14 14 6 1 8 14 28 20 7 1 T = int(input()) mod = 1_000_000_007 dp = [[0 for _ in range(5002)] for.. 2021. 10. 19.
[Python] 백준 2698번: 인접한 비트의 개수 https://www.acmicpc.net/problem/2698 2698번: 인접한 비트의 개수 첫째 줄에 테스트 케이스의 수 T(1 ≤ T ≤ 1,000)가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 수 2개가 공백으로 구분되어 이루어져 있다. 첫 번째 수는 n이고, 두 번째 수는 k이다. n과 www.acmicpc.net 1. 비트가 0으로 끝날 때와 1로 끝날 때를 나누어준다. 0으로 끝날 때는 같은 행의 이전 열의 합이고, 1로 끝날 때는 이전 열이 0으로 끝날 때 + 이전행 이전 열의 1로 끝날 때 1을 더해준다. 2. 점화식은 dp[i][j][0] = dp [i][j-1][1] + dp [i][j-1][0], dp [i][j][1] = dp [i-1][j-1][1], dp [i].. 2021. 10. 18.