Github & Portfolio
๐ Problem Solving(119)
-
[๋ฐฑ์ค-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..
-
[๋ฐฑ์ค-7662] ์ด์ค ์ฐ์ ์์ ํ / Python
7662๋ฒ: ์ด์ค ์ฐ์ ์์ ํ ์ ๋ ฅ ๋ฐ์ดํฐ๋ ํ์ค์ ๋ ฅ์ ์ฌ์ฉํ๋ค. ์ ๋ ฅ์ T๊ฐ์ ํ ์คํธ ๋ฐ์ดํฐ๋ก ๊ตฌ์ฑ๋๋ค. ์ ๋ ฅ์ ์ฒซ ๋ฒ์งธ ์ค์๋ ์ ๋ ฅ ๋ฐ์ดํฐ์ ์๋ฅผ ๋ํ๋ด๋ ์ ์ T๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ๋ฐ์ดํฐ์ ์ฒซ์งธ ์ค์๋ Q์ ์ www.acmicpc.net import sys import heapq input = sys.stdin.readline answer = [] for _ in range(int(input())): visited = [False] * 1000001 minH, maxH = [], [] for i in range(int(input())): s = input().split() if s[0] == "I": heapq.heappush(minH, (int(s[1]), i)) heapq.heappush..
-
[๋ฐฑ์ค-5430] AC / Python
5430๋ฒ: AC ๊ฐ ํ ์คํธ ์ผ์ด์ค์ ๋ํด์, ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ์ ์ ๋ฐฐ์ด์ ํจ์๋ฅผ ์ํํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ, ์๋ฌ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ์๋ error๋ฅผ ์ถ๋ ฅํ๋ค. www.acmicpc.net import sys def AC(command, data, n): command.replace("RR", "") l, r, d = 0, 0, True for c in command: if c == "R": d = not d elif c == "D": if d: l += 1 else: r += 1 if l + r
-
[๋ฐฑ์ค-1107] ๋ฆฌ๋ชจ์ปจ / Python
1107๋ฒ: ๋ฆฌ๋ชจ์ปจ ์ฒซ์งธ ์ค์ ์๋น์ด๊ฐ ์ด๋ํ๋ ค๊ณ ํ๋ ์ฑ๋ N (0 ≤ N ≤ 500,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ๊ณ ์ฅ๋ ๋ฒํผ์ ๊ฐ์ M (0 ≤ M ≤ 10)์ด ์ฃผ์ด์ง๋ค. ๊ณ ์ฅ๋ ๋ฒํผ์ด ์๋ ๊ฒฝ์ฐ์๋ ์ ์งธ ์ค์๋ ๊ณ ์ฅ๋ ๋ฒํผ www.acmicpc.net import sys input = sys.stdin.readline enable = {str(i) for i in range(10)} n = int(input()) m = int(input()) if m != 0: enable -= set(map(str, input().split())) answer = abs(100 - n) for num in range(1000001): num = str(num) for j in range(len(num)): ..