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

4๏ธโƒฃ Python/Problem Solving52

[Python Algorithm] RGB๊ฑฐ๋ฆฌ BOJ #1149 ๋ฌธ์ œ https://www.acmicpc.net/problem/1149 1149๋ฒˆ: RGB๊ฑฐ๋ฆฌ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ www.acmicpc.net ๋‚ด ๋ฌธ์ œ ํ’€์ด n = int(input()) r, g, b = map(int, input().split()) red = [r] green = [g] blue = [b] for i in range(1, n): r, g, b = map(int, input().split()) red.append(r + min(green[i-1], blue[i-1])) green.append(.. 2021. 12. 16.
[Python Algorithm] ํ‰๋ฒ”ํ•œ ๋ฐฐ๋‚ญ BOJ #12865 ๋ฌธ์ œ https://www.acmicpc.net/problem/12865 12865๋ฒˆ: ํ‰๋ฒ”ํ•œ ๋ฐฐ๋‚ญ ์ฒซ ์ค„์— ๋ฌผํ’ˆ์˜ ์ˆ˜ N(1 ≤ N ≤ 100)๊ณผ ์ค€์„œ๊ฐ€ ๋ฒ„ํ‹ธ ์ˆ˜ ์žˆ๋Š” ๋ฌด๊ฒŒ K(1 ≤ K ≤ 100,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑฐ์ณ ๊ฐ ๋ฌผ๊ฑด์˜ ๋ฌด๊ฒŒ W(1 ≤ W ≤ 100,000)์™€ ํ•ด๋‹น ๋ฌผ๊ฑด์˜ ๊ฐ€์น˜ V(0 ≤ V ≤ 1,000) www.acmicpc.net ๋‚ด ๋ฌธ์ œ ํ’€์ด n, k = map(int, input().split()) memory = [[0]*(k+1) for _ in range(n+1)] # [n+1][k+1] ํฌ๊ธฐ์˜ 0์œผ๋กœ ์ฑ„์›Œ์ง„ ๋ฐฐ์—ด for i in range(1, n+1): w, v = map(int, input().split()) # ํ˜„์žฌ ์ž…๋ ฅ๋œ ๋ฌผ๊ฑด์˜ ๋ฌด๊ฒŒ,.. 2021. 11. 25.
[Python Algorithm] ์ˆซ์ž์˜ ํ‘œํ˜„ Programmers(Lv.2) ๋ฌธ์ œ https://programmers.co.kr/learn/courses/30/lessons/12924 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ˆซ์ž์˜ ํ‘œํ˜„ Finn์€ ์š”์ฆ˜ ์ˆ˜ํ•™๊ณต๋ถ€์— ๋น ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜ํ•™ ๊ณต๋ถ€๋ฅผ ํ•˜๋˜ Finn์€ ์ž์—ฐ์ˆ˜ n์„ ์—ฐ์†ํ•œ ์ž์—ฐ์ˆ˜๋“ค๋กœ ํ‘œํ˜„ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์—ฌ๋Ÿฌ๊ฐœ๋ผ๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ๋“ค์–ด 15๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด 4๊ฐ€์ง€๋กœ ํ‘œํ˜„ ํ•  programmers.co.kr ๋‚ด ๋ฌธ์ œ ํ’€์ด def solution(n): answer = 0 for i in range(1, n+1): sum = 0 for j in range(i, n+1): sum += j if sum == n: answer += 1 break elif sum > n: break return answer # ์ž…์ถœ๋ ฅ ์˜ˆ์ œ print(solution.. 2021. 11. 22.
[Python Algorithm] ํŒŒ๋„๋ฐ˜ ์ˆ˜์—ด BOJ #9461 ๋ฌธ์ œ https://www.acmicpc.net/problem/9461 9461๋ฒˆ: ํŒŒ๋„๋ฐ˜ ์ˆ˜์—ด ์˜ค๋ฅธ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์‚ผ๊ฐํ˜•์ด ๋‚˜์„  ๋ชจ์–‘์œผ๋กœ ๋†“์—ฌ์ ธ ์žˆ๋‹ค. ์ฒซ ์‚ผ๊ฐํ˜•์€ ์ •์‚ผ๊ฐํ˜•์œผ๋กœ ๋ณ€์˜ ๊ธธ์ด๋Š” 1์ด๋‹ค. ๊ทธ ๋‹ค์Œ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ณผ์ •์œผ๋กœ ์ •์‚ผ๊ฐํ˜•์„ ๊ณ„์† ์ถ”๊ฐ€ํ•œ๋‹ค. ๋‚˜์„ ์—์„œ ๊ฐ€์žฅ ๊ธด ๋ณ€์˜ www.acmicpc.net ๋‚ด ๋ฌธ์ œ ํ’€์ด t = int(input()) memory = [1, 1, 1, 2, 2, 3, 4, 5, 7, 9] n = [] for _ in range(0, t): n.append(int(input())) if max(n) > 10: num = 10 while num < max(n): memory.append(memory[num-1] + memory[num-5]) num += 1 for i i.. 2021. 11. 16.
[Python Algorithm] 01ํƒ€์ผ BOJ #1904 ๋ฌธ์ œ https://www.acmicpc.net/problem/1904 1904๋ฒˆ: 01ํƒ€์ผ ์ง€์›์ด์—๊ฒŒ 2์ง„ ์ˆ˜์—ด์„ ๊ฐ€๋ฅด์ณ ์ฃผ๊ธฐ ์œ„ํ•ด, ์ง€์›์ด ์•„๋ฒ„์ง€๋Š” ๊ทธ์—๊ฒŒ ํƒ€์ผ๋“ค์„ ์„ ๋ฌผํ•ด์ฃผ์…จ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด ๊ฐ๊ฐ์˜ ํƒ€์ผ๋“ค์€ 0 ๋˜๋Š” 1์ด ์“ฐ์—ฌ ์žˆ๋Š” ๋‚ฑ์žฅ์˜ ํƒ€์ผ๋“ค์ด๋‹ค. ์–ด๋Š ๋‚  ์ง“๊ถ‚์€ ๋™์ฃผ๊ฐ€ ์ง€์›์ด www.acmicpc.net ๋‚ด ๋ฌธ์ œ ํ’€์ด n = int(input()) if n == 1: print(1) elif n == 2: print(2) else: memory = [1, 2] for i in range(2, n): memory.append((memory[i-2] + memory[i-1]) % 15746) print(memory[n-1]) ๐Ÿ‘‰DP ๋ฌธ์ œ๋กœ, ์ ํ™”์‹๊ณผ ๋ฉ”๋ชจ์ด์ œ์ด์…˜ ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ํ‘ธ๋Š”๊ฒŒ ํฌ์ธํŠธ! [์ ํ™”.. 2021. 11. 16.