์ „์ฒด ๊ธ€ 278

21-02-17

1์›” ์ดˆ์ค‘๋ฐ˜์— ์ง„์งœ ์—ด์‹ฌํžˆ ํ–ˆ๋Š”๋ฐ ์–ด์ฉŒ๋‹ค ์ด๋ชจ์–‘ ์ด๊ผด์ด ๋˜๋ฒ„๋ฆฐ๊ฑธ๊นŒ..? 1์›” ๋ง๋ถ€ํ„ฐ ์•„์ฃผ ์กฐ๊ธˆ์”ฉ ๋†€๋”๋‹ˆ 2์›”์— ์•„์ฃผ ๊ทธ๋ƒฅ ํŽ‘ํŽ‘ํŽ‘ํŽ‘ํŽ‘ํผใ…“ํŽ‘ ๋†€์•˜๋‹ค.. ํŠนํžˆ ์„ค ์—ฐํœด๋ผ๊ณ  ์•ž๋’ค๋กœ ๋ฉฐ์น ์”ฉ ๋†€๊ณ ์ž๊ณ ๋จน๊ณ ์‹ธ๊ณ  ์ด๋ ‡๊ฒŒ ์‚ด๋‹ค๊ฐ€ ์–ด์ฉ”๋ผ๊ณ  ๊ทธ๋ฅด๋ƒ ์ง„์งœ.. sw๋งˆ์—์ŠคํŠธ๋กœ?์ธ๊ฐ€ ๋ฐฑ์ค€ ๋ฐฐ๋„ˆ ํƒ€๊ณ  ๋“ค์–ด๊ฐ€๋ดค๋Š”๋ฐ SAFFY ๋น„์Šทํ•œ๊ฑฐ์˜€๋‹ค ์•„๋‹ˆ ์‹œ์ž‘ํ•œ ๋‚ ์งœ๋ฅผ ๋ณด๋ฉด SAFFY๊ฐ€ sw๋งˆ์—์ŠคํŠธ๋กœ ๋น„์Šทํ•œ๊ฑฐ๊ฒ ์ง€.? ์•”ํŠผ ๋ณด๊ณ  ์˜ค.. ํ•˜๊ณ  ์ง€์›ํ•ด๋ณด๋ ค๊ณ  ํ›„๊ธฐ๋ž‘ ๋ญ ์ข€ ์ฐพ์•„๋ดค๋Š”๋ฐ ๋˜ ํ˜„ํƒ€ ๋’ค์ง€๊ฒŒ ๋งž์•„์„œ ์ดํ‹€์ •๋„ ์šฐ์šธํ–ˆ๋‹ค ๋‹ค๋“ค ์—„์ฒญ ์ž˜ํ•˜๋Š”๊ฑฐ ๊ฐ™๊ณ  ์ค€๋น„๋œ ์‚ฌ๋žŒ๋“ค์ธ ๊ฒƒ ๊ฐ™์€ ๊ธฐ๋ถ„ ์ค€๋น„๋œ ์‚ฌ๋žŒ๋“ค์ด ์ €๋Ÿฐ ์ด์ˆ˜ ํ”„๋กœ๊ทธ๋žจ ๋“ค์œผ๋ฉด ์ค€๋น„ ์•ˆ๋œ ์‚ฌ๋žŒ์€ ๋ญ ๋“ค์–ด์•ผ ๋˜๋‚˜์š” ์ธ๊ฐ•? ์ „๊ณต์ˆ˜์—….? ๋ช‡๋…„ ์—ด์‹ฌํžˆ ํ•ด์„œ ์ข‹์€๋ฐ ์ทจ์—…ํ•˜์ž ๋งˆ์Œ ๋จน๋Š”๋‹ค ํ•ด๋„ ๋‚ด๊ฐ€ ๋ช‡๋…„ ํ•œ๋‹ค๊ณ  ์ข‹์€๋ฐ ๊ฐ„๋‹ค..

[BOJ/Step10] 11729 : ํ•˜๋…ธ์ด ํƒ‘ ์ด๋™ ์ˆœ์„œ (Python)

www.acmicpc.net/problem/11729 11729๋ฒˆ: ํ•˜๋…ธ์ด ํƒ‘ ์ด๋™ ์ˆœ์„œ ์„ธ ๊ฐœ์˜ ์žฅ๋Œ€๊ฐ€ ์žˆ๊ณ  ์ฒซ ๋ฒˆ์งธ ์žฅ๋Œ€์—๋Š” ๋ฐ˜๊ฒฝ์ด ์„œ๋กœ ๋‹ค๋ฅธ n๊ฐœ์˜ ์›ํŒ์ด ์Œ“์—ฌ ์žˆ๋‹ค. ๊ฐ ์›ํŒ์€ ๋ฐ˜๊ฒฝ์ด ํฐ ์ˆœ์„œ๋Œ€๋กœ ์Œ“์—ฌ์žˆ๋‹ค. ์ด์ œ ์ˆ˜๋„์Šน๋“ค์ด ๋‹ค์Œ ๊ทœ์น™์— ๋”ฐ๋ผ ์ฒซ ๋ฒˆ์งธ ์žฅ๋Œ€์—์„œ ์„ธ ๋ฒˆ์งธ ์žฅ๋Œ€๋กœ www.acmicpc.net n๊ฐœ์˜ ์›ํŒ์„ 1๋ฒˆ ์žฅ๋Œ€์—์„œ 3๋ฒˆ ์žฅ๋Œ€๋กœ ์˜ฎ๊ธฐ๋ ค๋ฉด 1. n-1๊ฐœ์˜ ์›ํŒ์„ 1๋ฒˆ ์žฅ๋Œ€(์ถœ๋ฐœ)์—์„œ 2๋ฒˆ ์žฅ๋Œ€(์ค‘๊ฐ„)๋กœ ์˜ฎ๊ธด๋‹ค : ์žฌ๊ท€ 2. ๊ฐ€์žฅ ํฐ ์›ํŒ์„ 1๋ฒˆ ์žฅ๋Œ€(์ถœ๋ฐœ)์—์„œ 3๋ฒˆ ์žฅ๋Œ€(๋„์ฐฉ)๋กœ ์˜ฎ๊ธด๋‹ค 3. n-1๊ฐœ์˜ ์›ํŒ์„ 2๋ฒˆ ์žฅ๋Œ€(์ค‘๊ฐ„)์—์„œ 3๋ฒˆ ์žฅ๋Œ€(๋„์ฐฉ)๋กœ ์˜ฎ๊ธด๋‹ค : ์žฌ๊ท€ 3๊ฐœ์˜ ๊ณผ์ •์„ ๊ฑฐ์น˜๊ณ  ์ด 2^n + 1๋ฒˆ ์ด๋™์ด ํ•„์š”ํ•˜๋‹ค. ์œ„ ๊ณผ์ •์„ ๊ตฌํ˜„ํ•˜๋ฉด hanoi(n, start, middle,..

[BOJ/Step10] 2447 : ๋ณ„ ์ฐ๊ธฐ - 10 (Python)

www.acmicpc.net/problem/2447 2447๋ฒˆ: ๋ณ„ ์ฐ๊ธฐ - 10 ์žฌ๊ท€์ ์ธ ํŒจํ„ด์œผ๋กœ ๋ณ„์„ ์ฐ์–ด ๋ณด์ž. N์ด 3์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ(3, 9, 27, ...)์ด๋ผ๊ณ  ํ•  ๋•Œ, ํฌ๊ธฐ N์˜ ํŒจํ„ด์€ N×N ์ •์‚ฌ๊ฐํ˜• ๋ชจ์–‘์ด๋‹ค. ํฌ๊ธฐ 3์˜ ํŒจํ„ด์€ ๊ฐ€์šด๋ฐ์— ๊ณต๋ฐฑ์ด ์žˆ๊ณ , ๊ฐ€์šด๋ฐ๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ์นธ์— ๋ณ„์ด www.acmicpc.net n์€ 3์˜ ๋ฐฐ์ˆ˜๋กœ ์ž…๋ ฅ๋˜๊ณ , n*n ํฌ๊ธฐ์˜ ์‚ฌ๊ฐํ˜•์œผ๋กœ *์ด ์ถœ๋ ฅ๋œ๋‹ค. ์ „์ฒด ์‚ฌ๊ฐํ˜•์„ 9๊ฐœ๋กœ ๋‚˜๋ˆด์„ ๋•Œ, ์ • ๊ฐ€์šด๋ฐ๋Š” ํ•ญ์ƒ ๋นˆ์นธ, ๋‚˜๋จธ์ง€ 8๊ฐœ ๋ถ€๋ถ„์€ ๋˜ 9๊ฐœ๋กœ ๋‚˜๋ˆ ์ ธ ๊ฐ™์€ ๊ทœ์น™์„ ๋ฐ˜๋ณตํ•œ๋‹ค => ์žฌ๊ท€ํ•จ์ˆ˜ 1. ์ž…๋ ฅ๋ฐ›์€ n*n ํฌ๊ธฐ์˜ ์ด์ค‘ ๋ฆฌ์ŠคํŠธ์— ๋ฏธ๋ฆฌ '*'์„ ์ฑ„์›Œ๋‘๊ณ  ์ • ๊ฐ€์šด๋ฐ ๋ถ€๋ถ„๋งŒ ๊ณต๋ฐฑ์œผ๋กœ ๋ฐ”๊พธ๋Š” ๋ฐฉ๋ฒ• (1) - divstar(arrays, x, y, n) : arrays์™€ ํฌ๊ธฐ ..

[BOJ/Step10] 10870 : ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜ 5 (Python)

www.acmicpc.net/problem/10870 10870๋ฒˆ: ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜ 5 ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 0๊ณผ 1๋กœ ์‹œ์ž‘ํ•œ๋‹ค. 0๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 0์ด๊ณ , 1๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 1์ด๋‹ค. ๊ทธ ๋‹ค์Œ 2๋ฒˆ์งธ ๋ถ€ํ„ฐ๋Š” ๋ฐ”๋กœ ์•ž ๋‘ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์˜ ํ•ฉ์ด ๋œ๋‹ค. ์ด๋ฅผ ์‹์œผ๋กœ ์จ๋ณด๋ฉด Fn = Fn-1 + Fn-2 (n ≥ 2)๊ฐ€ www.acmicpc.net x๋ฅผ ์ „๋‹ฌํ•˜๋ฉด fibo(x-1) + fibo(x-2) ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ fibo() ๋ฅผ ์ •์˜ fibo()๋Š” ์žฌ๊ท€ํ•จ์ˆ˜๋กœ x๊ฐ€ 0 ๋˜๋Š” 1์ผ๋•Œ๊นŒ์ง€ fibo()๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ํ˜ธ์ถœํ•œ๋‹ค # 10870.py def fibo(x): if x == 0: return 0 elif x == 1: return 1 else: return fibo(x-1) + fibo(x-2) x = int(in..

[BOJ/Step10] 10872 : ํŒฉํ† ๋ฆฌ์–ผ (Python)

www.acmicpc.net/problem/10872 10872๋ฒˆ: ํŒฉํ† ๋ฆฌ์–ผ 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, N!์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. www.acmicpc.net N! = N * (N - 1) * … * 2 * 1 x๋ฅผ ์ „๋‹ฌํ•˜๋ฉด x * fax(x-1)์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ fac() ์„ ์ •์˜ fac()์€ ์žฌ๊ท€ํ•จ์ˆ˜๋กœ x๊ฐ€ 0์ผ๋•Œ๊นŒ์ง€ fac()๋ฅผ ๋ฐ˜๋ณตํ•ด์„œ ํ˜ธ์ถœํ•œ๋‹ค # 10872.py def fac(x): if x == 0: return 1 else: return x * fac(x-1) x = int(input()) print(fac(x))

[BOJ/Step9] 1002 : ํ„ฐ๋ › (Python)

www.acmicpc.net/problem/1002 1002๋ฒˆ: ํ„ฐ๋ › ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค ๋ฅ˜์žฌ๋ช…์ด ์žˆ์„ ์ˆ˜ ์žˆ๋Š” ์œ„์น˜์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ๋งŒ์•ฝ ๋ฅ˜์žฌ๋ช…์ด ์žˆ์„ ์ˆ˜ ์žˆ๋Š” ์œ„์น˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ๋ฌดํ•œ๋Œ€์ผ ๊ฒฝ์šฐ์—๋Š” -1์„ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์กฐ๊ทœํ˜„๊ณผ ๋ฐฑ์Šนํ™˜์˜ ์ขŒํ‘œ์™€ ๋ฅ˜์žฌ๋ช…๊ณผ์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ๊ฐ ์ฃผ์–ด์กŒ์„ ๋•Œ ๋ฅ˜์žฌ๋ช…์ด ์žˆ์„ ์ˆ˜ ์žˆ๋Š” ์ขŒํ‘œ์˜ ์ˆ˜ == ๋‘ ์ ์˜ ์ขŒํ‘œ์™€ ๋ฐ˜์ง€๋ฆ„์ด ์ฃผ์–ด์กŒ์„ ๋•Œ ๋‘ ์›์˜ ๊ต์ฐจ์ ์˜ ๊ฐœ์ˆ˜ A(x1, y1) ๋ฐ˜์ง€๋ฆ„ r1, B(x2, y2) ๋ฐ˜์ง€๋ฆ„ r2 ์ผ๋•Œ ๋‘ ์ ์˜ ๊ฑฐ๋ฆฌ distance = ๋ฃจํŠธ(( x1 - x2 )^2 + ( y1 - y2 )^2) ๋ผ ํ•œ๋‹ค. 1. ๋‘ ์›์ด ์ผ์น˜ํ•  ๋•Œ : distance == 0 and r1 == r2 2. ๋‘ ์›์ด ๊ต์ฐจํ•˜์ง€ ์•Š์„ ๋•Œ : r1 + r2 < d..

[BOJ/Step9] 3053 : ํƒ์‹œ ๊ธฐํ•˜ํ•™ (Python)

www.acmicpc.net/problem/3053 3053๋ฒˆ: ํƒ์‹œ ๊ธฐํ•˜ํ•™ ์ฒซ์งธ ์ค„์—๋Š” ์œ ํด๋ฆฌ๋“œ ๊ธฐํ•˜ํ•™์—์„œ ๋ฐ˜์ง€๋ฆ„์ด R์ธ ์›์˜ ๋„“์ด๋ฅผ, ๋‘˜์งธ ์ค„์—๋Š” ํƒ์‹œ ๊ธฐํ•˜ํ•™์—์„œ ๋ฐ˜์ง€๋ฆ„์ด R์ธ ์›์˜ ๋„“์ด๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์ •๋‹ต๊ณผ์˜ ์˜ค์ฐจ๋Š” 0.0001๊นŒ์ง€ ํ—ˆ์šฉํ•œ๋‹ค. www.acmicpc.net ์›์˜ ์ •์˜๋Š” ์–ด๋–ค ์ ์—์„œ์˜ ๊ฑฐ๋ฆฌ๊ฐ€ ์ผ์ •ํ•œ ์ ๋“ค์˜ ์ง‘ํ•ฉ์ด๋‹ค. ํƒ์‹œ ๊ธฐํ•˜ํ•™์—์„œ์˜ ๊ฑฐ๋ฆฌ์˜ ์ •์˜๊ฐ€ D(T1,T2) = |x1-x2| + |y1-y2| ๋กœ ์ •์˜๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ํƒ์‹œ ๊ธฐํ•˜ํ•™์—์„œ์˜ ์›์€, ํ•œ ์ ์ด (0, 0) ์›์ ์ด๋ผ๊ณ  ํ•  ๋•Œ x + y๊ฐ€ ์ผ์ •ํ•œ ์ ๋“ค์˜ ์ง‘ํ•ฉ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์›์˜ ๋„“์ด๋ฅผ ๊ตฌํ•˜๋ฉด ์œ ํด๋ฆฌ๋“œ ๊ธฐํ•˜ํ•™ : PI * R * R ํƒ์‹œ ๊ธฐํ•˜ํ•™ : 2 * R * R ( = 2R * 2R / 2 ) ์ด ๋œ๋‹ค. # 3053.py impor..

[BOJ/Step9] 4153 : ์ง๊ฐ์‚ผ๊ฐํ˜• (Python)

www.acmicpc.net/problem/4153 4153๋ฒˆ: ์ง๊ฐ์‚ผ๊ฐํ˜• ์ž…๋ ฅ์€ ์—ฌ๋Ÿฌ๊ฐœ์˜ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค๋กœ ์ฃผ์–ด์ง€๋ฉฐ ๋งˆ์ง€๋ง‰์ค„์—๋Š” 0 0 0์ด ์ž…๋ ฅ๋œ๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ์ผ€์ด์Šค๋Š” ๋ชจ๋‘ 30,000๋ณด๋‹ค ์ž‘์€ ์–‘์˜ ์ •์ˆ˜๋กœ ์ฃผ์–ด์ง€๋ฉฐ, ๊ฐ ์ž…๋ ฅ์€ ๋ณ€์˜ ๊ธธ์ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. www.acmicpc.net ์ง๊ฐ์‚ผ๊ฐํ˜•์€ ๊ฐ€์žฅ ๊ธด ๋ณ€์˜ ์ œ๊ณฑ์ด ๋‚˜๋จธ์ง€ ๋‘ ๋ณ€์˜ ์ œ๊ณฑ์˜ ํ•ฉ๊ณผ ๊ฐ™๋‹ค 1. ์ •์ˆ˜ ์„ธ๊ฐœ๋ฅผ ๋ฆฌ์ŠคํŠธ a์— ์ž…๋ ฅ๋ฐ›๊ณ  ์…‹ ๋ชจ๋‘ 0์ผ๋•Œ ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ํƒˆ์ถœ 2. a๋ฅผ ์ •๋ ฌ 3. a[2]์˜ ์ œ๊ณฑ์ด a[0], a[1] ๋‘ ๋ณ€์˜ ์ œ๊ณฑ์˜ ํ•ฉ๊ณผ ๊ฐ™์œผ๋ฉด right์„, ๋‹ค๋ฅด๋ฉด wrong์„ ์ถœ๋ ฅ์‹œํ‚จ๋‹ค. # 4153.py while True: a = list(map(int, input().split())) if a[0] == 0 and a[1] == 0 and..

[BOJ/Step9] 3009 : ๋„ค ๋ฒˆ์งธ ์  (Python)

www.acmicpc.net/problem/3009 3009๋ฒˆ: ๋„ค ๋ฒˆ์งธ ์  ์„ธ ์ ์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ถ•์— ํ‰ํ–‰ํ•œ ์ง์‚ฌ๊ฐํ˜•์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ ํ•„์š”ํ•œ ๋„ค ๋ฒˆ์งธ ์ ์„ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. www.acmicpc.net 1. ์„ธ ์ ์ด ์ฃผ์–ด์กŒ๋Š”๋ฐ ํ•œ ์ ์„ ์ฐ์Œ์œผ๋กœ์„œ ํ•ญ์ƒ ์ง์‚ฌ๊ฐํ˜•์ด ๋งŒ๋“ค์–ด์ง„๋‹ค๋Š” ๊ฑด, ์ฃผ์–ด์ง€๋Š” ์„ธ ์ ์ด ๋ฌด์กฐ๊ฑด ์ง๊ฐ์œผ๋กœ ์ฃผ์–ด์ง„๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. 2. ์ฃผ์–ด์ง„ ์„ธ ์ ์€ x๋ผ๋ฆฌ, y๋ผ๋ฆฌ ๋ฌถ์—ˆ์„ ๋•Œ ๋‘ ๊ฐœ๋Š” ๊ฐ™๊ณ  ํ•œ ๊ฐœ๋Š” ๋‹ค๋ฅผ ๊ฒƒ์ด๋‹ค. ๋‹ค๋ฅธ ํ•œ ๊ฐœ๋ฅผ ๋ชจ์•„ ๋„ค๋ฒˆ์งธ ์ ์„ ๋งŒ๋“ค์–ด ์ฃผ๋ฉด ๋œ๋‹ค. # 3009.py x1, y1 = map(int, input().split()) x2, y2 = map(int, input().split()) x3, y3 = map(int, input().split()) x4 = x1 if ..

[BOJ/Step9] 1085 : ์ง์‚ฌ๊ฐํ˜•์—์„œ ํƒˆ์ถœ (Python)

www.acmicpc.net/problem/1085 1085๋ฒˆ: ์ง์‚ฌ๊ฐํ˜•์—์„œ ํƒˆ์ถœ ํ•œ์ˆ˜๋Š” ์ง€๊ธˆ (x, y)์— ์žˆ๋‹ค. ์ง์‚ฌ๊ฐํ˜•์˜ ์™ผ์ชฝ ์•„๋ž˜ ๊ผญ์ง“์ ์€ (0, 0)์— ์žˆ๊ณ , ์˜ค๋ฅธ์ชฝ ์œ„ ๊ผญ์ง“์ ์€ (w, h)์— ์žˆ๋‹ค. ์ง์‚ฌ๊ฐํ˜•์˜ ๊ฒฝ๊ณ„์„ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฑฐ๋ฆฌ์˜ ์ตœ์†Ÿ๊ฐ’์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. www.acmicpc.net 1. ํ•œ์ˆ˜์˜ ์œ„์น˜๋กœ๋ถ€ํ„ฐ ๊ฒฝ๊ณ„์„ ๊นŒ์ง€ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ฑฐ๋ฆฌ๋Š” x, w-x, y, h-y ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜ ์ด๋‹ค. => ๋‚ด์žฅํ•จ์ˆ˜ min() ์‚ฌ์šฉ # 1085.py x, y, w, h = map(int, input().split()) print(min(x, y, w - x, h - y))