๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฐ˜์‘ํ˜•

Programming

(40)
[baekjoon] 23288๋ฒˆ: ์ฃผ์‚ฌ์œ„ ๊ตด๋ฆฌ๊ธฐ2 (python) https://www.acmicpc.net/problem/23288 23288๋ฒˆ: ์ฃผ์‚ฌ์œ„ ๊ตด๋ฆฌ๊ธฐ 2 ํฌ๊ธฐ๊ฐ€ N×M์ธ ์ง€๋„๊ฐ€ ์กด์žฌํ•œ๋‹ค. ์ง€๋„์˜ ์˜ค๋ฅธ์ชฝ์€ ๋™์ชฝ, ์œ„์ชฝ์€ ๋ถ์ชฝ์ด๋‹ค. ์ง€๋„์˜ ์ขŒํ‘œ๋Š” (r, c)๋กœ ๋‚˜ํƒ€๋‚ด๋ฉฐ, r๋Š” ๋ถ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜, c๋Š” ์„œ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ๋–จ์–ด์ง„ ์นธ์˜ ๊ฐœ์ˆ˜์ด๋‹ค. ๊ฐ€์žฅ ์™ผ www.acmicpc.net ๋ฌธ์ œ ์ฝ”๋“œ from collections import deque N, M, K = map(int ,input().split()) Map = [list(map(int, input().split())) for _ in range(N)] ans = 0 # ๋™, ๋ถ, ์„œ, ๋‚จ (๋ฐ˜์‹œ๊ณ„) dr = [0, -1, 0, 1] dc = [1, 0, -1, 0] dice = [2, 4, 1, 3..
[baekjoon] 14888๋ฒˆ: ์—ฐ์‚ฐ์ž ๋ผ์›Œ๋„ฃ๊ธฐ (python) https://www.acmicpc.net/problem/14888 14888๋ฒˆ: ์—ฐ์‚ฐ์ž ๋ผ์›Œ๋„ฃ๊ธฐ ์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(2 ≤ N ≤ 11)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„์—๋Š” A1, A2, ..., AN์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ Ai ≤ 100) ์…‹์งธ ์ค„์—๋Š” ํ•ฉ์ด N-1์ธ 4๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋Š”๋ฐ, ์ฐจ๋ก€๋Œ€๋กœ ๋ง์…ˆ(+)์˜ ๊ฐœ์ˆ˜, ๋บ„์…ˆ(-)์˜ ๊ฐœ์ˆ˜, ๊ณฑ www.acmicpc.net ๋ฌธ์ œ ์ฝ”๋“œ - DFS(์žฌ๊ท€)๋กœ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์—ฐ์‚ฐ ์ˆ˜ํ–‰. from itertools import permutations N = int(input()) nums = list(map(int, input().split())) cals = list(map(int, input().split())) MAX = -int(1e9) MIN = int(1e9..
[Softeer][level3] ์—ผ๊ธฐ์„œ์—ด ์ปค๋ฒ„ (python) https://softeer.ai/practice/info.do?idx=1&eid=1526 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ํ•ด์„ค์˜์ƒ https://www.youtube.com/watch?v=wgw6i6jGc0A ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”๋“œ import sys N, M = map(int, input().split()) dna = [list(input()) for _ in range(N)] superDNA = [None for _ in range(2 ** N)] superDNA[0] = ['.'] * M def merge(dna1, dna2) : dna = [] if dna1 == [] or dna2 == [] : return [] dna = [] ..
[Softeer][level3] ์ถœํ‡ด๊ทผ๊ธธ (python) https://softeer.ai/practice/info.do?idx=1&eid=1529 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ์—ญ๋ฐฉํ–ฅ ๊ฐ„์„  ๊ทธ๋ž˜ํ”„๋ฅผ ์ด์šฉ. ์—ญ๋ฐฉํ–ฅ ๊ฐ„์„  ๊ทธ๋ž˜ํ”„์—์„œ T๊ฐ€ ์–ด๋–ค ์ •์ ์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ์ •๋ฐฉํ–ฅ์—์„œ ํ•ด๋‹น ์ •์ ์ด T์— ๋„๋‹ฌํ•  ์ˆ˜ ์žˆ์Œ์„ ํ™œ์šฉ. ์•„๋ž˜๋Š” ์˜ค๋‹ต ์ˆ˜๊ฐ€ ๋งŽ์•„ ์ฒ˜์Œ์— 0์  ๋‚˜์˜จ ์ฝ”๋“œ. ์–ด๋–ค ๋ถ€๋ถ„์ด ํ‹€๋ ธ๋Š”์ง€ ์ง€์ ํ•ด์ฃผ์‹œ๋ฉด ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค... import sys from collections import deque n, m = map(int, input().split()) adj = [[] for _ in range(n + 1)] adj_reverse = [[] for _ in range(n + 1)] for _ i..
[Softeer][level3] ์ž๋™์ฐจ ํ…Œ์ŠคํŠธ (python) https://softeer.ai/practice/info.do?idx=1&eid=1717 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด binary search ๋ฌธ์ œ. python์—๋Š” bisect ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ™œ์šฉ ๊ฐ€๋Šฅ. bisect_left()๋ฅผ ํ†ตํ•ด ์ค‘๊ฐ„๊ฐ’์ด ๋“ค์–ด๊ฐˆ ์™ผ์ชฝ ์œ„์น˜์˜ index๋ฅผ ์ฐพ๊ณ  ์ค‘๊ฐ„๊ฐ’๋ณด๋‹ค ์ž‘์€ ๊ฒƒ๋“ค ์ค‘(์ค‘๊ฐ„๊ฐ’ ๊ธฐ์ค€ ์™ผ์ชฝ) ํ•˜๋‚˜, ์ค‘๊ฐ„๊ฐ’๋ณด๋‹ค ํฐ ๊ฒƒ๋“ค ์ค‘(์ค‘๊ฐ„๊ฐ’ ๊ธฐ์ค€ ์˜ค๋ฅธ์ชฝ) ํ•˜๋‚˜ ๊ณ ๋ฅด๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ฐพ์•„์•ผํ•จ -> ์ค‘๊ฐ„๊ฐ’ ๊ธฐ์ค€ ์™ผ์ชฝ์— ์žˆ๋Š” ์ˆ˜์˜ ๊ฐฏ์ˆ˜ * ์ค‘๊ฐ„๊ฐ’ ๊ธฐ์ค€ ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ์ˆ˜์˜ ๊ฐฏ์ˆ˜ = ์ด ๊ฒฝ์šฐ์˜ ์ˆ˜ EX) ์ž…๋ ฅ์˜ˆ์ œ 1์—์„œ ์—ฐ๋น„๋ฅผ ์ •๋ ฌํ•˜๋ฉด [1,2,3,5,6]์ธ๋ฐ, ์ค‘๊ฐ„๊ฐ’์ด 3์ธ ๊ฒฝ์šฐ bisect_left์˜ ์ถœ๋ ฅ๊ฐ’์€ 2๊ฐ€ ๋˜๊ณ  [1..
[Softeer][level3] ์ˆœ์„œ๋Œ€๋กœ ๋ฐฉ๋ฌธํ•˜๊ธฐ (python) https://softeer.ai/practice/info.do?idx=1&eid=2050 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ์žฌ๊ท€์ ์œผ๋กœ DFS ํ™œ์šฉ ๋ฌธ์ œ. ์ฝ”๋“œ import sys n, m = map(int, input().split()) Map = [list(map(int, input().split())) for _ in range(n)] points = [] for _ in range(m) : r, c = map(int, input().split()) points.append([r - 1, c - 1]) visited = [[0] * n for _ in range(n)] def DFS(loc, cnt) : global ans if loc =..
[Softeer][level3] ๋กœ๋ด‡์ด ์ง€๋‚˜๊ฐ„ ๊ฒฝ๋กœ (python) https://softeer.ai/practice/info.do?idx=1&eid=577 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด bfs๋กœ ํ’€์ด. ์ฒ˜์Œ ์‹œ์ž‘์ ์„ ์ฐพ์„ ๋•Œ, '#'์ธ ๊ฒฝ์šฐ๋ฅผ ์ฐพ๊ณ  ์ฃผ๋ณ€์— '#'์ด ์œ ์ผํ•œ ๊ฒฝ์šฐ(์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š” ๊ณณ์ด ์ •ํ•ด์ง„ ๊ฒฝ์šฐ) ์‹œ์ž‘์ ์œผ๋กœ ํŒ๋‹จ. ๋งˆ์ง€๋ง‰์— ๊ฒฝ๋กœ ์ถ”๊ฐ€ํ•  ๋•Œ, ์ด ์ „์— ๊ฐ™์€๊ฒŒ ๋‚˜์™”๋Š”์ง€ ์—ฌ๋ถ€์— ๋”ฐ๋ผ flag๋กœ ๊ตฌ๋ณ„ํ•˜์—ฌ R, L์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •. ์ฝ”๋“œ import sys from pprint import pprint from collections import deque H, W = map(int, input().split()) map = [list(sys.stdin.readline().rstrip()) f..
[Softeer][level3] ์•ˆ์ „์šด์ „์„ ๋„์™€์ค„ ์ฐจ์„ธ๋Œ€ ์ง€๋Šฅํ˜• ๊ตํ†ต์‹œ์Šคํ…œ (python) https://softeer.ai/practice/info.do?idx=1&eid=580 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด BFS๋ฌธ์ œ. ์‚ฌ์ „์— ์ •์˜๋œ ๊ต์ฐจ๋กœ ์ •๋ณด ์ €์žฅํ•˜๊ณ  ํ•˜๋‚˜์”ฉ ๋ฐฉ๋ฌธํ•ด์„œ ๊ฐฏ์ˆ˜ count ์ฒ˜์Œ์— 20์ ์ด ๋‚˜์˜ค๋Š”๋ฐ ํ‹€๋ฆฐ ๋ถ€๋ถ„์„ ์ฐพ๋А๋ผ ์˜ค๋ž˜ ๊ฑธ๋ฆผ. ๋ฐฉ๋ฌธํ–ˆ๋˜ ๊ณณ์ด์–ด๋„ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•ด๋„ ๊ดœ์ฐฎ์•˜์Œ import sys from collections import deque from pprint import pprint N, T = map(int, input().split()) intersection = [[0] + [] for i in range(N + 1)] for i in range(1, N + 1) : for j in range(1, N ..

๋ฐ˜์‘ํ˜•