Github & Portfolio
๐ Problem Solving/Baekjoon(73)
-
[๋ฐฑ์ค-16236] ์๊ธฐ ์์ด / Python
16236๋ฒ: ์๊ธฐ ์์ด N×N ํฌ๊ธฐ์ ๊ณต๊ฐ์ ๋ฌผ๊ณ ๊ธฐ M๋ง๋ฆฌ์ ์๊ธฐ ์์ด 1๋ง๋ฆฌ๊ฐ ์๋ค. ๊ณต๊ฐ์ 1×1 ํฌ๊ธฐ์ ์ ์ฌ๊ฐํ ์นธ์ผ๋ก ๋๋์ด์ ธ ์๋ค. ํ ์นธ์๋ ๋ฌผ๊ณ ๊ธฐ๊ฐ ์ต๋ 1๋ง๋ฆฌ ์กด์ฌํ๋ค. ์๊ธฐ ์์ด์ ๋ฌผ๊ณ ๊ธฐ๋ ๋ชจ๋ ํฌ๊ธฐ๋ฅผ ๊ฐ www.acmicpc.net import sys from collections import deque input = sys.stdin.readline n = int(input()) graph = [] for i in range(n): li = list(map(int, input().split())) graph.append(li) for j in range(n): if li[j] == 9: graph[i][j] = 2 start = [i, j] dx = [-1, 1, 0, 0] dy =..
-
[๋ฐฑ์ค-14500] ํ ํธ๋ก๋ฏธ๋ ธ / Python
14500๋ฒ: ํ ํธ๋ก๋ฏธ๋ ธ ํด๋ฆฌ์ค๋ฏธ๋ ธ๋ ํฌ๊ธฐ๊ฐ 1×1์ธ ์ ์ฌ๊ฐํ์ ์ฌ๋ฌ ๊ฐ ์ด์ด์ ๋ถ์ธ ๋ํ์ด๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ์กฐ๊ฑด์ ๋ง์กฑํด์ผ ํ๋ค. ์ ์ฌ๊ฐํ์ ์๋ก ๊ฒน์น๋ฉด ์ ๋๋ค. ๋ํ์ ๋ชจ๋ ์ฐ๊ฒฐ๋์ด ์์ด์ผ ํ๋ค. ์ ์ฌ๊ฐํ์ ๋ณ www.acmicpc.net import sys input = sys.stdin.readline n, m = map(int, input().split()) board = [list(map(int, input().split())) for _ in range(n)] tetromino = [ [(0, 0), (0, 1), (1, 0), (1, 1)], [(0, 0), (0, 1), (0, 2), (0, 3)], [(0, 0), (1, 0), (2, 0), (3, 0)], [(0, 0), (0, 1..
-
[๋ฐฑ์ค-10026] ์ ๋ก์์ฝ / Python
10026๋ฒ: ์ ๋ก์์ฝ ์ ๋ก์์ฝ์ ๋นจ๊ฐ์๊ณผ ์ด๋ก์์ ์ฐจ์ด๋ฅผ ๊ฑฐ์ ๋๋ผ์ง ๋ชปํ๋ค. ๋ฐ๋ผ์, ์ ๋ก์์ฝ์ธ ์ฌ๋์ด ๋ณด๋ ๊ทธ๋ฆผ์ ์๋ ์ฌ๋์ด ๋ณด๋ ๊ทธ๋ฆผ๊ณผ๋ ์ข ๋ค๋ฅผ ์ ์๋ค. ํฌ๊ธฐ๊ฐ N×N์ธ ๊ทธ๋ฆฌ๋์ ๊ฐ ์นธ์ R(๋นจ๊ฐ), G(์ด๋ก) www.acmicpc.net import sys from collections import deque input = sys.stdin.readline n = int(input()) dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] def bfs(x, y, c, colorList): queue = deque() queue.append((x, y)) colorList[x][y] = 0 while queue: x, y = queue.popleft() for i in ran..
-
[๋ฐฑ์ค-11727] 2xn ํ์ผ๋ง 2 / Python
https://www.acmicpc.net/problem/11727 11727๋ฒ: 2×n ํ์ผ๋ง 2 2×n ์ง์ฌ๊ฐํ์ 1×2, 2×1๊ณผ 2×2 ํ์ผ๋ก ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์๋ ๊ทธ๋ฆผ์ 2×17 ์ง์ฌ๊ฐํ์ ์ฑ์ด ํ๊ฐ์ง ์์ด๋ค. www.acmicpc.net n = int(input()) d = [0] * 1001 d[1], d[2] = 1, 3 for i in range(3, n + 1): d[i] = d[i - 1] + (2 * d[i - 2]) print(d[n] % 10007) ํด์ค ๋ง์ง๋ง์์ ์ด์ ๋ ๊ฐ๋ง ํ์ธํด์ฃผ๋ฉด ๋๋ค. ๋ง์ง๋ง์์ ๋ ๋ฒ์งธ๋ 2x1, 2x2๋ก ์ด๋ฃจ์ด์ง๊ธฐ ๋๋ฌธ์ 2๋ฅผ ๊ณฑํด์ค๋ค.
-
[๋ฐฑ์ค-11726] 2xn ํ์ผ๋ง / Python
11726๋ฒ: 2×n ํ์ผ๋ง 2×n ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ 1×2, 2×1 ํ์ผ๋ก ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์๋ ๊ทธ๋ฆผ์ 2×5 ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ ์ฑ์ด ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์์ด๋ค. www.acmicpc.net n = int(input()) d = [0] * 1001 d[1], d[2] = 1, 2 for i in range(3, n+1): d[i] = d[i-1] + d[i-2] print(d[n]%10007) ํด์ค ๋ํ์ ์ธ dp๋ฌธ์ ๋ก ์๋ ค์ง ํ์ผ๋ง ๋ฌธ์ . ํ์ฌ ๊ฐ์ ์ด์ ๊ฐ๊ณผ ๊ทธ ์ด์ ๊ฐ์ ํฉ์ด๋ค.
-
[๋ฐฑ์ค-9019] DSLR / Python
9019๋ฒ: DSLR ๋ค ๊ฐ์ ๋ช ๋ น์ด D, S, L, R ์ ์ด์ฉํ๋ ๊ฐ๋จํ ๊ณ์ฐ๊ธฐ๊ฐ ์๋ค. ์ด ๊ณ์ฐ๊ธฐ์๋ ๋ ์ง์คํฐ๊ฐ ํ๋ ์๋๋ฐ, ์ด ๋ ์ง์คํฐ์๋ 0 ์ด์ 10,000 ๋ฏธ๋ง์ ์ญ์ง์๋ฅผ ์ ์ฅํ ์ ์๋ค. ๊ฐ ๋ช ๋ น์ด๋ ์ด ๋ ์ง์คํฐ์ www.acmicpc.net import sys from collections import deque input = sys.stdin.readline def bfs(): queue = deque() queue.append((a, "")) while queue: num, result = queue.popleft() dn = (num * 2) % 10000 if dn == b: return result + "D" elif visited[dn] == 0: visited[dn] = 1..