Potato
์•ˆ๋…•ํ•˜์„ธ์š”, ๊ฐ์žก๋‹ˆ๋‹ค?๐Ÿฅ” ^___^ ๐Ÿ˜บ github ๋ฐ”๋กœ๊ฐ€๊ธฐ ๐Ÿ‘‰๐Ÿป
๋ฐ˜์‘ํ˜•

์Šค์œ„ํ”„ํŠธ 45

[๋ฐฑ์ค€] (Swift) 2156๋ฒˆ - ํฌ๋„์ฃผ ์‹œ์‹ (dp, ์Šค์œ„ํ”„ํŠธ ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ’€์ด)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/2156 2156๋ฒˆ: ํฌ๋„์ฃผ ์‹œ์‹ ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹ํšŒ์— ๊ฐ”๋‹ค. ๊ทธ ๊ณณ์— ๊ฐ”๋”๋‹ˆ, ํ…Œ์ด๋ธ” ์œ„์— ๋‹ค์–‘ํ•œ ํฌ๋„์ฃผ๊ฐ€ ๋“ค์–ด์žˆ๋Š” ํฌ๋„์ฃผ ์ž”์ด ์ผ๋ ฌ๋กœ ๋†“์—ฌ ์žˆ์—ˆ๋‹ค. ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹์„ ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‘ ๊ฐ€์ง€ ๊ทœ www.acmicpc.net ๋‚˜์˜ ํ’€์ด ๋จผ์ € ๊ทœ์น™์„ ์ฐพ๋Š”๋ฐ ์‹œ๊ฐ„์ด ์กฐ๊ธˆ ๊ฑธ๋ ท๋‹ค. ๊ณผ์—ฐ ์ด๋ ‡๊ฒŒ ํ‘ธ๋Š”๊ฒŒ ์•ž์—๊บผ๊ฐ€ ์„ธ๊ฐœ ๋ฐ˜๋ณต๋˜์ง€ ์•Š๊ณ  ๊ตฌํ•˜๋Š”๊ฒŒ ๋งž๋‚˜? ์‹ถ์—ˆ๋˜ ์˜์‹ฌ์ด ๋“ค์—ˆ์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ ํ™”์‹์„ ์ƒ์„ฑํ•˜๋ฉด์„œ, ๋‘๋ฒˆ ์—ฐ์† ๋‚˜์˜จ๊ฑด ์ œ์™ธํ•˜๊ณ  ์ ํ™”์‹์„ ์„ธ์›Œ์ฃผ๋ฉด ๋˜๋Š” ๊ฑฐ์˜€๋‹ค. (์ด๊ฒŒ๋ฌด์Šจ๋ง์ด์ง€,, ๋ง๋กœํ‘œํ˜„์ด ์•ˆ๋˜๋„ค ใ… ใ… ) ์–ด์จ‹๋“  ํ’€์ด๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ์˜ˆ์‹œ๋กœ ์ค€๊ฒƒ ์ฒ˜๋Ÿผ, ํฌ๋„์ฃผ๊ฐ€ 6๊ฐœ ์ฃผ์–ด์กŒ๋”ฐ๋ฉด, ์œ„์™€ ๊ฐ™์ด ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์ตœ๋Œ€๊ฐ€ ๋  ์ˆ˜ ..

Algorithm/Baekjoon 2022.03.27

[๋ฐฑ์ค€] (Swift) 9465๋ฒˆ - ์Šคํ‹ฐ์ปค (dp ํ’€์ด)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/9465 9465๋ฒˆ: ์Šคํ‹ฐ์ปค ์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ์ฒซ์งธ ์ค„์—๋Š” n (1 ≤ n ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ ๋‘ ์ค„์—๋Š” n๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉฐ, ๊ฐ ์ •์ˆ˜๋Š” ๊ทธ ์œ„์น˜์— ํ•ด๋‹นํ•˜๋Š” ์Šคํ‹ฐ์ปค์˜ www.acmicpc.net ํ’€์ด IDEA ์ด๋ ‡๊ฒŒ ๋ฐœ๊ฒฌํ•œ ์ ํ™”์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค. ์—ฌ๊ธฐ์„œ dp ๋Š” ์œ„์— ๊ทธ๋ฆผ์œผ๋กœ ๋‚˜ํƒ€๋‚ธ ์ตœ๋Œ€๊ฐ’๋“ค์„ ์ €์žฅํ•˜๋Š” ๋ฐฐ์—ด์ด๊ณ , arr ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ž…๋ ฅ๋ฐ›์€ ์Šคํ‹ฐ์ปค๋“ค์˜ ๊ฐ€๊ฒฉ์ด ๋ช…์‹œ๋˜์–ด์žˆ๋Š” ๋ฐฐ์—ด์ด๋‹ค. dp[0][i] = max(dp[1][i-1] + arr[0][i], dp[1][i-2] + arr[0][i]) dp[1][i] = max(dp[0][i-1] + arr[1][i], dp[0..

Algorithm/Baekjoon 2022.03.25

[๋ฐฑ์ค€] (Swift) 1309๋ฒˆ - ๋™๋ฌผ์›

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/1309 1309๋ฒˆ: ๋™๋ฌผ์› ์ฒซ์งธ ์ค„์— ์šฐ๋ฆฌ์˜ ํฌ๊ธฐ N(1≤N≤100,000)์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ํ’€์ด IDEA ์‚ฌ์ž๊ฐ€ ์–ด๋”” ์œ„์น˜์— ์˜ค๋Š๋ƒ์— ๋”ฐ๋ผ ์ƒˆ๋กœ ๋“ค์–ด์˜ค๋Š” ์‚ฌ์ž๋“ค์˜ ์œ„์น˜๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค. ํ•˜์ง€๋งŒ ์ด ์ด์ „์— ๋‹จ์ˆœํ•œ ์ˆซ์ž๊ทœ์น™์ด ์žˆ๋Š”์ง€ ์ฐพ์•„๋ณด์•˜๋‹ค. ์˜ˆ์‹œ๊ฐ€ N = 4 ์ผ๋•Œ๊ฐ€ ์ฃผ์–ด์กŒ์œผ๋‹ˆ, N=1,2,3 ์„ ์ฐพ์•„๋ณด์•˜๋‹ค. N=1 ์ผ๋•Œ 3, N=2 ์ผ๋•Œ 7, N=3์ผ๋•Œ 17์ด ๋˜์—ˆ๊ณ , N=4์ผ๋•Œ๋Š” 41์ด ๋œ๋‹ค๊ณ  ํ–ˆ๋‹ค. ์ด ์ˆซ์ž๋“ค์„ ํ†ตํ•ด ๊ทœ์น™์„ ์ฐพ์•„๋ณด๋ฉด, n-1๋ฒˆ์งธ ์ˆซ์ž์— 2๋ฅผ ๊ณฑํ•˜๊ณ , n-2๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ๋”ํ•ด์ฃผ๋ฉด n์ผ๋•Œ์˜ ๊ฐ’์ด ๋‚˜์˜จ๋‹ค๋Š” ๋‹จ์ˆœํ•œ ์ˆซ์ž๊ทœ์น™์ด ์กด์žฌํ•œ๋‹ค. ์ด์ฒ˜๋Ÿผ dp ๋ฌธ์ œ์—์„œ๋Š” ๊ทœ์น™์„ ์ฐพ๋Š” ๊ฒƒ์ด ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค. ์†Œ์Šค์ฝ”๋“œ -..

Algorithm/Baekjoon 2022.03.21

[Swift] ๊ณต์‹ ๋ฌธ์„œ ์ •๋ฆฌ (22) - Protocols (ํ”„๋กœํ† ์ฝœ)

์•ˆ๋…•ํ•˜์„ธ์š”, ๊ฐ์ž์ž…๋‹ˆ๋‹ค! (์™œ..์˜ค๋žœ๋งŒ์— ์ธ์‚ฌํ•˜๋Š”๊ฒƒ ๊ฐ™์ง€..) ์ผ์ฃผ์ผ๋งŒ์— ๋Œ์•„์˜จ ๊ณต์‹ ๋ฌธ์„œ ์ •๋ฆฌ์ž…๋‹ˆ๋‹ค.. ์ด๋ฒˆ์ฃผ ๋‚ด๋‚ด ํ”„๋กœํ† ์ฝœ ๊ด€๋ จํ•ด์„œ๋งŒ ์ •๋ฆฌํ•œ ๊ฒƒ ๊ฐ™์•„์š”. ๊ทธ๋ฆฌ๊ณ  ์• ํ”Œ์•„์นด๋ฐ๋ฏธ์˜ ์‹œ์ž‘์œผ๋กœ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด๋„ˆ๋ฌด ๋ถ€์กฑํ•˜๋„ค์š” ใ… ใ…  ๊ทธ๋ž˜๋„ ์ง€์น˜์ง€๋„ ์•Š๊ณ  ํ”„๋กœํ† ์ฝœ ์ •๋ฆฌ๋‚ด์šฉ์„ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค. ๋‚ด์šฉ์ด ๋„ˆ~~~~~๋ฌด ๋งŽ์•„์„œ,, ๋ชจ๋“  ๋‚ด์šฉ์ด ๋‹ค ๋จธ๋ฆฟ์†์— ๋“ค์–ด์˜ค์ง„ ์•Š์€ ๊ฒƒ๊ฐ™์•„์š” ใ…  ๋” ์ฝ์–ด๋ณด๊ณ , ์‹ค๋ฌด์—์„œ ์ ‘ํ•ด๋ณด๋Š” ๋ฐฉ๋ฒ• ๋ฟ์ด๊ฒŸ์ฃ ? ๊ทธ๋Ÿผ ์ฆ๊ฑฐ์šด ๋งˆ์Œ์œผ๋กœ ์‹œ์ž‘ํ•ด๋ด…์‹œ๋‹ค! gogo Swift Document chap.22 Protocols (ํ”„๋กœํ† ์ฝœ) ๋ฐ”๋กœ๊ฐ€๊ธฐ Protocols — The Swift Programming Language (Swift 5.6) Protocols A protocol defines a blueprint of m..

[๋ฐฑ์ค€] (Swift) 1149๋ฒˆ - RGB๊ฑฐ๋ฆฌ (dp ์˜ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์œ ํ˜•, ๋งˆ์ง€๋ง‰ ์ˆ˜์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜)

๋ฌธ์ œ๋งํฌ https://www.acmicpc.net/problem/1149 1149๋ฒˆ: RGB๊ฑฐ๋ฆฌ ์ฒซ์งธ ์ค„์— ์ง‘์˜ ์ˆ˜ N(2 ≤ N ≤ 1,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ ์ง‘์„ ๋นจ๊ฐ•, ์ดˆ๋ก, ํŒŒ๋ž‘์œผ๋กœ ์น ํ•˜๋Š” ๋น„์šฉ์ด 1๋ฒˆ ์ง‘๋ถ€ํ„ฐ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ง‘์„ ์น ํ•˜๋Š” ๋น„์šฉ์€ 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ www.acmicpc.net ํ’€์ด IDEA ์šฐ์„ , ๋ฌธ์ œ๋ฅผ ์ฝ์–ด๋ณด๋ฉด ์กฐ๊ฑด์ด ์„ธ๊ฐœ ๋‚˜ ๋‹ฌ๋ ค์žˆ์ง€๋งŒ, ๋‹ค ๊ฐ™์€ ๋ง์ด๋‹ค. ๊ทธ์ € ์ง‘์˜ ์ƒ‰์ƒ์€ ์•ž๋’ค ์ง‘๊ณผ ๊ฒน์น˜์ง€ ์•Š์•„์•ผ ํ•œ๋‹ค๋Š” ํ•˜๋‚˜์˜ ์กฐ๊ฑด์ผ ๋ฟ์ธ ๊ฒƒ์ด๋‹ค. 1๋ฒˆ์ง‘์ด ๋นจ๊ฐ„์ƒ‰์ด๋ฉด, 2๋ฒˆ์ง‘์€ ํŒŒ๋ž‘์ด๋‚˜ ์ดˆ๋ก์ด๋ฉด ๋˜๊ณ , 50๋ฒˆ์งธ ์ง‘์ด ๋นจ๊ฐ•์ด๋ผ๋ฉด, 49๋ฒˆ์ง‘๊ณผ 51๋ฒˆ์ง‘์€ ๋นจ๊ฐ•์ด ์•„๋‹ˆ๋ฉด ๋œ๋‹ค. ๋‚˜๋Š” ์ด๋ฌธ์ œ๋ฅผ ๋ณด๊ณ  ๋ฐ”๋กœ ์ด ๋ฌธ์ œ(click!!)๋ฅผ ํ’€์—ˆ๋˜ ๊ฒฝํ—˜์„ ์ƒ๊ฐํ–ˆ๋‹ค. ๋งˆ์ง€..

Algorithm/Baekjoon 2022.03.19

[๋ฐฑ์ค€] (Swift) 15988๋ฒˆ - 1,2,3 ๋”ํ•˜๊ธฐ 3 (์Šค์œ„ํ”„ํŠธ dp ๊ธฐ๋ณธ๋ฌธ์ œ, ๋ฐฑ์ค€ 9095๋ฒˆ)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/15988 15988๋ฒˆ: 1, 2, 3 ๋”ํ•˜๊ธฐ 3 ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค, n์„ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ 1,000,000,009๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ํ’€์ด idea ์•„๋‹ˆ ํ’€๋‹ค๋ณด๋‹ˆ, 1,2,3 ๋”ํ•˜๊ธฐ ๊ด€๋ จํ•œ ์‹œ๋ฆฌ์ฆˆ ๋ฌธ์ œ๋ฅผ ๋ช‡๊ฐœ ํ’€์–ด๋ดค์œผ๋ฏ€๋กœ, ๋” ๋ณต์žกํ•ด์•ผ๋˜๋Š”๋ฐ ์ด๊ฒŒ ๊ทœ์น™์ด๋ผ๊ณ ? ํ•˜๋ฉด์„œ ์• ๋งค๋ชจํ˜ธํ•˜๊ฒŒ ํ’€์—ˆ๋˜ ๋ฌธ์ œ์˜€๋‹ค. ๊ทผ๋ฐ ์•„๋‹ˆ๋‚˜ ๋‹ค๋ฅผ๊นŒ 1,2,3๋”ํ•˜๊ธฐ (๋ฐฑ์ค€ 9095๋ฒˆ) ๋ฌธ์ œ๋ž‘ ๊ทธ๋ƒฅ ๋™์ผํ•œ ๋ฌธ์ œ์˜€๋‹ค. ใ…‹ใ…‹ใ…‹ใ…‹ ๊ดœํžˆ ์ซ„์•˜๋„ค... https://didu-story.tistory.com/225 [๋ฐฑ์ค€] (Swift) 9095๋ฒˆ - 1,2,3 ๋”ํ•˜๊ธฐ (์Šค์œ„ํ”„ํŠธ ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ’€์ด) ๋ฌธ์ œ ๋งํฌ..

Algorithm/Baekjoon 2022.03.19

[๋ฐฑ์ค€] (Swift) 2225๋ฒˆ - ํ•ฉ๋ถ„ํ•ด (dp, 2์ฐจ์› ๊ทœ์น™, ์Šค์œ„ํ”„ํŠธ ํ’€์ด)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/2225 2225๋ฒˆ: ํ•ฉ๋ถ„ํ•ด ์ฒซ์งธ ์ค„์— ๋‹ต์„ 1,000,000,000์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ํ’€์ด IDEA ๊ทœ์น™์„ ์ฐพ๋‹ค๊ฐ€ 2์ฐจ์›๋ฐฐ์—ด๋กœ ํ’€์–ด์•ผํ•œ๋‹ค๋Š” ์ƒ๊ฐ์„ ๋ฏธ์ฒ˜ ํ•˜์ง€ ๋ชปํ•ด์„œ ์ธํ„ฐ๋„ท์„ ์ฐธ๊ณ ํ–ˆ๋‹ค. dp ๋„ ๋‹ค์–‘ํ•œ ์œ ํ˜•์„ ํ’€๋ฉฐ ์–ด๋–ค ์ƒํ™ฉ์ผ ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ์ ‘๊ทผํ•ด์•ผํ•˜๋Š”์ง€ ๊ฐ์„ ์ตํ˜€์•ผํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ๊ทœ์น™์ฐพ๊ธฐ๊ฐ€ ํž˜๋“ค์—ˆ๋‹ค. ์ด๋Ÿฐ ๋ฌธ์ œ๊ฐ€ ๋‚˜์˜ค๋ฉด 2์ฐจ์›์œผ๋กœ ํ’€์ž. k๊ฐœ๋ฅผ ๋”ํ•ด์„œ n์„ ๋งŒ๋“œ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋ฐฐ์—ด๋กœ ๋„ฃ์œผ๋ฉด ๋œ๋‹ค. 2์ฐจ์› ๋ฐฐ์—ด์ผ ๊ฒฝ์šฐ ํ‘œ๋ฅผ ๊ทธ๋ฆฌ๋ฉด์„œ ๊ทœ์น™์„ ์ฐพ์•„๋‚˜์„œ๋ฉด ๋œ๋‹ค. ์ƒ๊ฐ๋ณด๋‹ค ๊ฐ„๋‹จํ•œ ๊ทœ์น™์ด ์žˆ๋‹ค. dp๋Š” ๋ฌด์กฐ๊ฑด ๊ทœ์น™๋ถ€ํ„ฐ! ๊ทœ์น™์„ ์„ค๋ช…ํ•ด๋ณด๊ฒ ๋‹ค. ์šฐ์„  ์œ„์—์„œ ์ ์€๊ฒƒ ์ฒ˜๋Ÿผ k๊ฐœ์˜ ์ˆ˜๋ฅผ ๋”ํ•ด์„œ n์„ ๋งŒ๋“ค์ž! ๋ผ๋Š” ๋งฅ๋ฝ..

Algorithm/Baekjoon 2022.03.18

[๋ฐฑ์ค€] (Swift) 1699๋ฒˆ - ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ (dp)

๋ฌธ์ œ๋งํฌ https://www.acmicpc.net/problem/1699 1699๋ฒˆ: ์ œ๊ณฑ์ˆ˜์˜ ํ•ฉ ์–ด๋–ค ์ž์—ฐ์ˆ˜ N์€ ๊ทธ๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ œ๊ณฑ์ˆ˜๋“ค์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 11=32+12+12(3๊ฐœ ํ•ญ)์ด๋‹ค. ์ด๋Ÿฐ ํ‘œํ˜„๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, 11์˜ ๊ฒฝ์šฐ 11=22+22+12+12+12(5๊ฐœ ํ•ญ)๋„ ๊ฐ€๋Šฅํ•˜๋‹ค www.acmicpc.net ๋ฌธ์ œ ํ’€์ด IDEA ์šฐ์„  dp ๋ฌธ์ œ๋ฅผ ๋งŒ๋‚˜๋ฉด, ๊ทœ์น™์„ ํŒŒ์•…ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ˆ˜๊ธฐ๋กœ ์จ๋ณธ๋‹ค. ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•ด๋ณด์•˜๋‹ค. ๋ฌธ์ œ์˜ ๊ทœ์น™์ด ๋ณด์ผ๋“ฏ, ๋ณด์ด์ง€ ์•Š์•˜๋‹ค. dp ๋ฐฐ์—ด์— 1์ผ๋•Œ ํ•ญ์˜ ์ˆ˜ 1, 2์ผ๋•Œ ํ•ญ์˜ ์ˆ˜ 2, 3์ผ๋•Œ ํ•ญ์˜ ์ˆ˜ 3, 4์ผ๋•Œ ํ•ญ์˜ ์ˆ˜ 1.. ์ด๋ ‡๊ฒŒ ๋„ฃ์œผ๋ ค๊ณ  ํ•˜๋Š” ๊ฑด ์•Œ๊ฒ ๋‹ค. ๊ทผ๋ฐ ์ด์ œ ์–ด๋–ป๊ฒŒ ์ ํ™”์‹์„ ๋งŒ๋“ค์–ด์•ผํ• ๊นŒ? ์šฐ์„  ๋‚˜๋Š” ์•„..

Algorithm/Baekjoon 2022.03.16

[๋ฐฑ์ค€] (Swift) 1912๋ฒˆ - ์—ฐ์†ํ•ฉ (dp max ๊ฐ’ ๊ตฌํ•˜๊ธฐ!)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/1912 1912๋ฒˆ: ์—ฐ์†ํ•ฉ ์ฒซ์งธ ์ค„์— ์ •์ˆ˜ n(1 ≤ n ≤ 100,000)์ด ์ฃผ์–ด์ง€๊ณ  ๋‘˜์งธ ์ค„์—๋Š” n๊ฐœ์˜ ์ •์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ์ˆ˜์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ˆ˜๋Š” -1,000๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค. www.acmicpc.net ๋ฌธ์ œ ํ’€์ด idea ์•ž์—์„œ ํ’€๋˜ dp ๋ฌธ์ œ์™€ ๋‹ค๋ฅผ ๊ฒƒ ์—†๋Š” ๋ฌธ์ œ! ์•ž์—์„œ๋ถ€ํ„ฐ ๋”ํ•ด์ฃผ๊ณ  max๊ฐ’์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋ผ. ์™œ๋ƒ๋ฉด!! ์–ด์ฐจํ”ผ ๊ฐ€์žฅ ํฐ ๊ฐ’์„ ์ฐพ๋Š”๊ฑฐ๋ผ ๊ณ„์™ max ๊ฐ’์œผ๋กœ ์—…๋ฐ์ดํŠธ ๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์†Œ์Šค์ฝ”๋“œ let n = Int(String(readLine()!))! let arr = readLine()!.split(separator: " ").map{Int(String($0))!} var dp ..

Algorithm/Baekjoon 2022.03.16

[๋ฐฑ์ค€] (Swift) 14002๋ฒˆ - ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด4 (dp, LIS value ์ถœ๋ ฅํ•˜๊ธฐ)

๋ฌธ์ œ ๋งํฌ https://www.acmicpc.net/problem/14002 14002๋ฒˆ: ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด 4 ์ˆ˜์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆ˜์—ด A = {10, 20, 10, 30, 20, 50} ์ธ ๊ฒฝ์šฐ์— ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์€ A = {10, 20, 10, 30, 20, 50} ์ด www.acmicpc.net ๋ฌธ์ œ ํ’€์ด IDEA ์šฐ์„  ํ•ด๋‹น ๋ฌธ์ œ๋Š” LIS๋ฅผ ๊ตฌํ˜„ํ•œ ์ดํ›„์—, LIS ๋ถ€๋ถ„ ์ˆ˜์—ด์„ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๊ธฐ ๋–„๋ฌธ์— ์•„๋ž˜ ๋‘ ๊ฐœ์˜ ํฌ์ŠคํŒ…์„ ๋ชจ๋‘ ์ดํ•ดํ•ด์•ผ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ์ˆ˜์›”ํ•˜๊ฒŒ ํ’€ ์ˆ˜ ์žˆ๋‹ค. โ–ท LIS ๋ž€? https://didu-story.tistory.com/236 [์•Œ๊ณ ๋ฆฌ์ฆ˜] (Swift) ์ตœ๊ฐ• ์ฆ๊ฐ€ ๋ถ€๋ถ„ ์ˆ˜์—ด..

Algorithm/Baekjoon 2022.03.13
๋ฐ˜์‘ํ˜•