Github & Portfolio
๐ Problem Solving(119)
-
[๋ฐฑ์ค-1074] Z / Python
1074๋ฒ: Z ํ์๋ ํฌ๊ธฐ๊ฐ 2N × 2N์ธ 2์ฐจ์ ๋ฐฐ์ด์ Z๋ชจ์์ผ๋ก ํ์ํ๋ ค๊ณ ํ๋ค. ์๋ฅผ ๋ค์ด, 2×2๋ฐฐ์ด์ ์ผ์ชฝ ์์นธ, ์ค๋ฅธ์ชฝ ์์นธ, ์ผ์ชฝ ์๋์นธ, ์ค๋ฅธ์ชฝ ์๋์นธ ์์๋๋ก ๋ฐฉ๋ฌธํ๋ฉด Z๋ชจ์์ด๋ค. ๋ง์ฝ, N > 1์ด ๋ผ์ www.acmicpc.net def z(n, x, y): global answer if x == r and y == c: print(int(answer)) exit(0) if n == 1: answer += 1 return if not (x
-
[๋ฐฑ์ค-7569] ํ ๋งํ / Python
7569๋ฒ: ํ ๋งํ ์ฒซ ์ค์๋ ์์์ ํฌ๊ธฐ๋ฅผ ๋ํ๋ด๋ ๋ ์ ์ M,N๊ณผ ์์์ฌ๋ ค์ง๋ ์์์ ์๋ฅผ ๋ํ๋ด๋ H๊ฐ ์ฃผ์ด์ง๋ค. M์ ์์์ ๊ฐ๋ก ์นธ์ ์, N์ ์์์ ์ธ๋ก ์นธ์ ์๋ฅผ ๋ํ๋ธ๋ค. ๋จ, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net from collections import deque import sys m, n, h = map(int, sys.stdin.readline().split()) dx = [-1, 1, 0, 0, 0, 0] dy = [0, 0, -1, 1, 0, 0] dz = [0, 0, 0, 0, -1, 1] def bfs(): while queue: x, y, z = queue.popleft() for i in range(6): nx = x + dx[i..
-
[๋ฐฑ์ค-2468] ์์ ์์ญ / Python
2468๋ฒ: ์์ ์์ญ ์ฌ๋๋ฐฉ์ฌ์ฒญ์์๋ ๋ง์ ๋น๊ฐ ๋ด๋ฆฌ๋ ์ฅ๋ง์ฒ ์ ๋๋นํด์ ๋ค์๊ณผ ๊ฐ์ ์ผ์ ๊ณํํ๊ณ ์๋ค. ๋จผ์ ์ด๋ค ์ง์ญ์ ๋์ด ์ ๋ณด๋ฅผ ํ์ ํ๋ค. ๊ทธ ๋ค์์ ๊ทธ ์ง์ญ์ ๋ง์ ๋น๊ฐ ๋ด๋ ธ์ ๋ ๋ฌผ์ ์ ๊ธฐ์ง ์๋ www.acmicpc.net from collections import deque n = int(input()) graph = [list(map(int, input().split())) for _ in range(n)] maxCnt = 0 dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] def bfs(x, y): queue = deque() queue.append([x, y]) while queue: x, y = queue.popleft() for i in range(4): n..
-
[๋ฐฑ์ค-2583] ์์ญ ๊ตฌํ๊ธฐ / Python
https://www.acmicpc.net/problem/2583 2583๋ฒ: ์์ญ ๊ตฌํ๊ธฐ ์ฒซ์งธ ์ค์ M๊ณผ N, ๊ทธ๋ฆฌ๊ณ K๊ฐ ๋น์นธ์ ์ฌ์ด์ ๋๊ณ ์ฐจ๋ก๋ก ์ฃผ์ด์ง๋ค. M, N, K๋ ๋ชจ๋ 100 ์ดํ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค๋ถํฐ K๊ฐ์ ์ค์๋ ํ ์ค์ ํ๋์ฉ ์ง์ฌ๊ฐํ์ ์ผ์ชฝ ์๋ ๊ผญ์ง์ ์ x, y์ขํ๊ฐ๊ณผ ์ค www.acmicpc.net from collections import deque m, n, k = map(int, input().split()) graph = [[0] * n for i in range(m)] dx = [-1, 0, 1, 0] dy = [0, 1, 0, -1] l = [] for i in range(k): x1, y1, x2, y2 = map(int, input().split()) for..
-
[๋ฐฑ์ค-13549] ์จ๋ฐ๊ผญ์ง 3 / Python
13549๋ฒ: ์จ๋ฐ๊ผญ์ง 3 ์๋น์ด๋ ๋์๊ณผ ์จ๋ฐ๊ผญ์ง์ ํ๊ณ ์๋ค. ์๋น์ด๋ ํ์ฌ ์ N(0 ≤ N ≤ 100,000)์ ์๊ณ , ๋์์ ์ K(0 ≤ K ≤ 100,000)์ ์๋ค. ์๋น์ด๋ ๊ฑท๊ฑฐ๋ ์๊ฐ์ด๋์ ํ ์ ์๋ค. ๋ง์ฝ, ์๋น์ด์ ์์น๊ฐ X์ผ www.acmicpc.net from collections import deque n, k = map(int, input().split()) graph = [0] * 100001 dx = [-1, 1, 2] def bfs(start): queue = deque() queue.append(start) while queue: x = queue.popleft() if x == k: print(graph[x]) break for i in range(3): if i ..
-
[๋ฐฑ์ค-1916] ์ต์๋น์ฉ ๊ตฌํ๊ธฐ / Python
1916๋ฒ: ์ต์๋น์ฉ ๊ตฌํ๊ธฐ ์ฒซ์งธ ์ค์ ๋์์ ๊ฐ์ N(1 ≤ N ≤ 1,000)์ด ์ฃผ์ด์ง๊ณ ๋์งธ ์ค์๋ ๋ฒ์ค์ ๊ฐ์ M(1 ≤ M ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๊ทธ๋ฆฌ๊ณ ์ ์งธ ์ค๋ถํฐ M+2์ค๊น์ง ๋ค์๊ณผ ๊ฐ์ ๋ฒ์ค์ ์ ๋ณด๊ฐ ์ฃผ์ด์ง๋ค. ๋จผ์ ์ฒ์์๋ ๊ทธ www.acmicpc.net import sys import heapq INF = int(1e9) n = int(input()) m = int(input()) graph = [[] for _ in range(n + 1)] distance = [INF] * (n + 1) for _ in range(m): a, b, c = map(int, input().split()) graph[a].append((b, c)) start, end = map(int, input..