์ „์ฒด ๊ธ€

์ „์ฒด ๊ธ€

    [SSAFY] 10๊ธฐ ์ „๊ณต์ž ํ•ฉ๊ฒฉ ํ›„๊ธฐ | ์—์„ธ์ด | ์ฝ”๋”ฉํ…Œ์ŠคํŠธ | ์ธํ„ฐ๋ทฐ

    ~๋ชฉ์ฐจ~ ์ง€์›๋™๊ธฐ ์—์„ธ์ด ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ธํ„ฐ๋ทฐ ๋ฉด์ ‘์Šคํ„ฐ๋”” PT ๋ฉด์ ‘ ์ธ์„ฑ/๊ธฐ์ˆ ๋ฉด์ ‘ ํ›„๊ธฐ ๊ธ€์„ ๋งˆ์น˜๋ฉฐ ์ง€์›์„œ ์ ‘์ˆ˜ ์—์„ธ์ด ์ œ์ถœ SW ์ ์„ฑ์ง„๋‹จ ์ธํ„ฐ๋ทฐ ์ž…๊ณผ ๋ฐ ๊ต์œก 4/24(์›”) ~ 5/8(์›”) 5/9(ํ™”) ~ 5/20(ํ† ) SW ๋น„์ „๊ณต : 5/13(ํ† ) SW ์ „๊ณต : 5/21(์ผ) 6/7(์ˆ˜) ~ 6/13(ํ™”) 23๋…„ 7์›” ~ ์ง€์›๋™๊ธฐ SW ๋งˆ์—์ŠคํŠธ๋กœ๋ฅผ ์ค€๋น„ํ•˜๋˜ ์ œ๊ฐ€ ํŒจ๋ฐฐ์˜ ์“ด๋ง›์„ ๋ณด๊ณ  SSAFY๋ฅผ ์ค€๋น„ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์กธ์—…๊ณผ ๋™์‹œ์— ๋ง‰๋ง‰ํ•œ ์ทจ์—… ์‹œ์žฅ์—์„œ ์žฌ์ •์  ๋„์›€์„ ๋ฐ›์œผ๋ฉฐ ๊ณต๋ถ€ํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๊ธฐํšŒ๋ผ๊ณ  ํŒ๋‹จ์ด ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์—์„ธ์ด ๋‹ค์Œ์€ ์‹ธํ”ผ์—์„œ ์ œ๊ณตํ•œ ์—์„ธ์ด ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค. ์—์„ธ์ด ์ž‘์„ฑ์—์„œ ์š”๊ตฌํ•˜๋Š” ๋Œ€๋กœ ์–ด๋–ค ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜๊ณ ์‹ถ์€์ง€, ์–ด๋–ค ํ™œ๋™๋“ค์„ ํ–ˆ๋Š”์ง€, ์™œ ์ง€์›ํ–ˆ๋Š”์ง€ ์ž˜ ๋ถ„๋ฐฐํ•˜์—ฌ ์ž‘์„ฑํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ..

    [Python] ๋ฐฑ์ค€ 9655 ๋Œ ๊ฒŒ์ž„ | DP

    ~๋ชฉ์ฐจ~ ๋ฌธ์ œ ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ ์ž‘์„ฑ ์ฝ”๋“œ ๋ฌธ์ œ https://www.acmicpc.net/problem/9655 9655๋ฒˆ: ๋Œ ๊ฒŒ์ž„ ์ƒ๊ทผ์ด๊ฐ€ ๊ฒŒ์ž„์„ ์ด๊ธฐ๋ฉด SK๋ฅผ, ์ฐฝ์˜์ด๊ฐ€ ๊ฒŒ์ž„์„ ์ด๊ธฐ๋ฉด CY์„ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ - DP(๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ) - ๊ธฐ๋ก์„ ์œ„ํ•œ dp ๋ฐฐ์—ด : 0์€ SK, 1์€ CY๋ฅผ ์˜๋ฏธ - N์ด 1์ผ ๋•Œ : SK N์ด 2์ผ ๋•Œ : SK -> CY N์ด 3์ผ ๋•Œ : SK ๋˜๋Š” SK -> CY -> SK ์ด๋ฏ€๋กœ ๊ฒฐ๋ก ์ ์œผ๋กœ SK N์ด 4์ผ ๋•Œ : 1์ผ ๋•Œ ๊ฒฐ๊ณผ์™€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ ๋˜๋Š” 3์ผ ๋•Œ ๊ฒฐ๊ณผ์™€ ๋‹ค๋ฅธ ์‚ฌ๋žŒ, ๊ฒฐ๋ก ์ ์œผ๋กœ CY ...... - ์ ํ™”์‹ N์ด 4์ด์ƒ์ผ ๋•Œ, ai = (ai-1 + 1) % 2 ๋˜๋Š” ai = (ai-3 + 1) % 2 ์ž‘์„ฑ ์ฝ”๋“œ ..

    [Python] ๋ฐฑ์ค€ 2579 ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ | DP

    ~๋ชฉ์ฐจ~ ๋ฌธ์ œ ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ ์ž‘์„ฑ ์ฝ”๋“œ ๋ฌธ์ œ https://www.acmicpc.net/problem/2579 2579๋ฒˆ: ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ณ„๋‹จ ์˜ค๋ฅด๊ธฐ ๊ฒŒ์ž„์€ ๊ณ„๋‹จ ์•„๋ž˜ ์‹œ์ž‘์ ๋ถ€ํ„ฐ ๊ณ„๋‹จ ๊ผญ๋Œ€๊ธฐ์— ์œ„์น˜ํ•œ ๋„์ฐฉ์ ๊นŒ์ง€ ๊ฐ€๋Š” ๊ฒŒ์ž„์ด๋‹ค. ๊ณผ ๊ฐ™์ด ๊ฐ๊ฐ์˜ ๊ณ„๋‹จ์—๋Š” ์ผ์ •ํ•œ ์ ์ˆ˜๊ฐ€ ์“ฐ์—ฌ ์žˆ๋Š”๋ฐ ๊ณ„๋‹จ์„ ๋ฐŸ์œผ๋ฉด ๊ทธ ๊ณ„๋‹จ์— ์“ฐ์—ฌ ์žˆ๋Š” ์  www.acmicpc.net ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ - ์ตœ๋Œ€ 300๊ฐœ ๊ณ„๋‹จ์˜ ์ ์ˆ˜๋ฅผ ๊ธฐ๋กํ•  ๋ฐฐ์—ด ๋ฏธ๋ฆฌ ์„ ์–ธ - ๊ณ„๋‹จ ๋ณ„ ์ ์ˆ˜ ๊ธฐ๋ก ๋ฐฐ์—ด๊ณผ dp ๊ธฐ๋ก์„ ์ €์žฅํ•  ๋ฐฐ์—ด 2๊ฐœ ํ•„์š” - ๊ณ„๋‹จ 1 : ๋ณธ์ธ ์ ์ˆ˜ ๊ณ„๋‹จ 2 : ๊ณ„๋‹จ 1 + ๋ณธ์ธ ์ ์ˆ˜ ๊ณ„๋‹จ 3 : max(๊ณ„๋‹จ 1 + ๋ณธ์ธ , ๊ณ„๋‹จ 2 + ๋ณธ์ธ) - ์ ํ™”์‹ : max( ๋ณธ์ธ ์ด์ „ ๊ณ„๋‹จ ๋ฐŸ๊ณ  ๋ณธ์ธ , ๋ณธ์ธ ์ด์ „ ๊ณ„๋‹จ ๋ฐŸ์ง€ ์•Š๊ณ  ๋ณธ์ธ) ai = ma..

    [Python] ๋ฐฑ์ค€ 1966 ํ”„๋ฆฐํ„ฐ ํ

    ~๋ชฉ์ฐจ~ ๋ฌธ์ œ ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ ์ž‘์„ฑ ์ฝ”๋“œ ๋ฌธ์ œ https://www.acmicpc.net/problem/1966 1966๋ฒˆ: ํ”„๋ฆฐํ„ฐ ํ ์—ฌ๋Ÿฌ๋ถ„๋„ ์•Œ๋‹ค์‹œํ”ผ ์—ฌ๋Ÿฌ๋ถ„์˜ ํ”„๋ฆฐํ„ฐ ๊ธฐ๊ธฐ๋Š” ์—ฌ๋Ÿฌ๋ถ„์ด ์ธ์‡„ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฌธ์„œ๋ฅผ ์ธ์‡„ ๋ช…๋ น์„ ๋ฐ›์€ ‘์ˆœ์„œ๋Œ€๋กœ’, ์ฆ‰ ๋จผ์ € ์š”์ฒญ๋œ ๊ฒƒ์„ ๋จผ์ € ์ธ์‡„ํ•œ๋‹ค. ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฌธ์„œ๊ฐ€ ์Œ“์ธ๋‹ค๋ฉด Queue ์ž๋ฃŒ๊ตฌ์กฐ์— www.acmicpc.net ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ - ์ž๋ฃŒ๊ตฌ์กฐ ํ - ์ˆœ์„œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‘๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ ์ž˜ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ธ์ง€ํ•˜์—ฌ์•ผํ•œ๋‹ค. * ๋‚จ์€ ์šฐ์„ ์ˆœ์œ„ ์ค‘ ์ตœ๋Œ€๊ฐ’์ด๋ฏ€๋กœ ์ถœ๋ ฅํ•˜๋Š” ์ˆœ์„œ * ์ดˆ๊ธฐ ํ์˜ ๊ฐ ๋ฌธ์„œ ์ˆœ์„œ - ํ์— (์ค‘์š”๋„, ์œ„์น˜) ๊ฐ’์„ ์‚ฝ์ž…ํ•œ๋‹ค. ์œ„์น˜๊ฐ’์„ ์‚ฝ์ž…ํ•˜๋Š” ์ด์œ ๋Š” M๊ณผ ๋น„๊ตํ•˜์—ฌ ์ฐพ๋Š” ๋ฌธ์„œ์ธ์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•จ - ์ดˆ๊ธฐ ํ๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ๋‹ค. ๋งค๋ฒˆ ํ์˜ ์ตœ๋Œ€๊ฐ’์„ ๊ตฌํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค..

    [Python] ๋ฐฑ์ค€ 16953 A -> B | ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ | BFS

    ~๋ชฉ์ฐจ~ ๋ฌธ์ œ ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ ์ž‘์„ฑ ์ฝ”๋“œ ๋ฌธ์ œ https://www.acmicpc.net/problem/16953 16953๋ฒˆ: A → B ์ฒซ์งธ ์ค„์— A, B (1 ≤ A < B ≤ 109)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ - ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜, BFS - ์ž…๋ ฅ ๊ฐ’์— ๋Œ€ํ•ด์„œ ๋‘๊ฐœ์˜ ์—ฐ์‚ฐ์„ ์—ฐ์‡„์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•จ์œผ๋กœ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜ ํ™•์ธ - ์›ํ•˜๋Š” ๊ฐ’์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ถœ๋ ฅ ํ›„ ์ฆ‰์‹œ ์ข…๋ฃŒ( ๊ฐ€์žฅ ๋จผ์ € ๋ฐœ๊ฒฌ๋˜๋Š” ์—ฐ์‚ฐ ํšŸ์ˆ˜๊ฐ€ ๊ฐ€์žฅ ์ž‘์€ ์—ฐ์‚ฐ์ด๋ฏ€๋กœ) : ๊ทธ๋ฆฌ๋”” - ์—ฐ์‚ฐ ๊ฐ’์ด ํƒ€์ผ“ ๊ฐ’๋ณด๋‹ค ํฌ๋‹ค๋ฉด ํ•ด๋‹น ์„œ๋ธŒ ํŠธ๋ฆฌ์— ๋Œ€ํ•ด์„œ ๋”์ด์ƒ ํƒ์ƒ‰ํ•˜์ง€ ์•Š๋„๋ก ํ•œ๋‹ค. ์ž‘์„ฑ ์ฝ”๋“œ from collections import deque a, b = map(int, input().split()) que = deque() #..

    [Python] ๋ฐฑ์ค€ 1003 ํ”ผ๋ณด๋‚˜์น˜ ํ•จ์ˆ˜ | DP

    ~๋ชฉ์ฐจ~ ๋ฌธ์ œ ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ ์ž‘์„ฑ ์ฝ”๋“œ ๋ฌธ์ œ https://www.acmicpc.net/problem/1003 1003๋ฒˆ: ํ”ผ๋ณด๋‚˜์น˜ ํ•จ์ˆ˜ ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค 0์ด ์ถœ๋ ฅ๋˜๋Š” ํšŸ์ˆ˜์™€ 1์ด ์ถœ๋ ฅ๋˜๋Š” ํšŸ์ˆ˜๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ•ด๊ฒฐ ํฌ์ธํŠธ - DP - ์ž…๋ ฅ๊ฐ’(1~40) ์— ๋”ฐ๋ผ 0๊ณผ 1์ด ๋ถˆ๋ฆฐ ํšŸ์ˆ˜๋ฅผ ์ ํ™”์‹์„ ์ด์šฉํ•˜์—ฌ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค - ์ž…๋ ฅ๊ฐ’ 0์€ 0์ด 1ํšŒ/1์ด 0ํšŒ ๋ถˆ๋ฆฐ๋‹ค. ์ž…๋ ฅ๊ฐ’ 1์€ 0์ด 0ํšŒ/1์ด 1ํšŒ ๋ถˆ๋ฆฐ๋‹ค. - ์ž…๋ ฅ๊ฐ’์ด 2๋ผ๋ฉด f(2) = f(1) + f(0) ์ด๋ฏ€๋กœ 1์ด ํ•œ ๋ฒˆ, 0์ด ํ•œ ๋ฒˆ ๋ถˆ๋ฆฐ๋‹ค. - ์ž…๋ ฅ๊ฐ’์ด 3์ด๋ผ๋ฉด f(3) = f(2) + f(1) ์ด๋ฏ€๋กœ f(2) ์‹คํ–‰์‹œ 1ํ•œ ๋ฒˆ, 0 ํ•œ ๋ฒˆ ๋ถˆ๋ฆฐ ๊ฒƒ๊ณผ 1์ด ํ•œ ๋ฒˆ ๋ถˆ๋ฆฐ ๊ฒƒ์„ ๋”ํ•˜๋ฉด 1์ด 2๋ฒˆ..