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

๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ

(100)
[Spring] redis ๋ถ„์‚ฐ ๋ฝ ์ „๋žต์„ ํ†ตํ•œ ๋™์‹œ์„ฑ ์ฒ˜๋ฆฌ(์„ ์ฐฉ์ˆœ, ๋”ํ‹ฐ ๋ฆฌ๋“œ, ํŒฌํ…€ ๋ฆฌ๋“œ) Spring๊ณผ Redis๋ฅผ ํ™œ์šฉํ•œ ๋™์‹œ์„ฑ ์ฒ˜๋ฆฌ ๋ฐ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑํ˜„๋Œ€์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ๋™์‹œ์„ฑ ์ฒ˜๋ฆฌ๊ฐ€ ์ค‘์š”ํ•œ ์š”์†Œ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์กฐํšŒํ•˜๋Š” ํ™˜๊ฒฝ์—์„œ ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์€ ํฐ ๋„์ „ ๊ณผ์ œ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.  ์‹ค์ œ๋กœ ๋ฌด์ž‘์œ„ ํฌ์ธํŠธ(๋žœ๋ค ํฌ์ธํŠธ) ์ง€๊ธ‰ ์ด๋ฒคํŠธ๋ฅผ ๊ฐœ๋ฐœํ–ˆ๋˜ ๊ฒฝํ—˜์„ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ๊ธ€์„ ์ž‘์„ฑํ•ด ๋ด…๋‹ˆ๋‹ค.1. ๋™์‹œ์„ฑ ์ฒ˜๋ฆฌ์˜ ํ•„์š”์„ฑ๋™์‹œ์„ฑ์ด๋ž€ ์—ฌ๋Ÿฌ ํŠธ๋žœ์žญ์…˜์ด ๋™์‹œ์— ์‹คํ–‰๋  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ํ˜„์ƒ์œผ๋กœ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ์˜ ์ฝ๊ธฐ ๋ฐ ์“ฐ๊ธฐ ์ž‘์—…์˜ ์ถฉ๋Œ์„ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ถฉ๋Œ์ด ๋ฐœ์ƒํ•˜๋ฉด ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์ด ์ €ํ•ด๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋Š” ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์— ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2. Spring์—์„œ์˜ ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€Spring์—์„œ๋Š” ํŠธ๋žœ์žญ์…˜์˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์„ ์„ค์ •ํ•˜์—ฌ..
[Linux] CI/CD ๊ฐœ์„ : Jenkins๋ฅผ ํ™œ์šฉํ•œ ์ž๋™ํ™” ๋ฐฐํฌ ์‹œ์Šคํ…œ ๊ตฌ์ถ•(nonub) โ–  ๋ฐฐ๊ฒฝํšŒ์‚ฌ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ธฐ์กด CI/CD ์‹œ์Šคํ…œ์—์„œ๋Š” Jenkins๋ฅผ ํ†ตํ•ด ๋นŒ๋“œ๋œ ํŒŒ์ผ์ด ์„œ๋ฒ„๋กœ ์˜ฎ๊ฒจ์ง€๋Š” ๊ตฌ์กฐ๊ฐ€ ์ด๋ฏธ ๊ตฌํ˜„๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฐฐํฌ ๊ณผ์ •์€ ์—ฌ์ „ํžˆ ์ˆ˜์ž‘์—…์œผ๋กœ ์ง„ํ–‰๋˜์—ˆ๊ณ , ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์„œ๋ฒ„์— ์›๊ฒฉ ์ ‘์†ํ•˜์—ฌ ๊ฐ ๋„๋ฉ”์ธ์— ๋งž๊ฒŒ ๋ฐฐํฌํ•˜๋Š” ๋ฒˆ๊ฑฐ๋กœ์šด ๊ณผ์ •์„ ๊ฑฐ์ณ์•ผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ƒํ™ฉ์€ ๋ถˆํŽธํ•จ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๊ฐœ๋ฐœ์ž๋“ค์˜ ์ƒ์‚ฐ์„ฑ์„ ์ €ํ•˜์‹œํ‚จ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์—ฌ ๊ฐœ์„ ์„ ํ•˜๊ธฐ๋กœ ๊ฒฐ์‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.โ–  ๊ฐœ์„  ๋ชฉํ‘œ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, ์ €๋Š” CI/CD ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•˜์—ฌ ๋ฐฐํฌ ๊ณผ์ •์—์„œ์˜ ์ธ์  ์˜ค๋ฅ˜๋ฅผ ์ค„์ด๊ณ , ์—…๋ฌด ํšจ์œจ์„ฑ์„ ๋†’์ด๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด Jenkins๋ฅผ ํ†ตํ•ด ์ „๋‹ฌ๋˜๋Š” ์••์ถ•๋œ ๋นŒ๋“œํŒŒ์ผ์„ ํƒ€๊ฒŸ์„œ๋ฒ„์ธ linux์˜ nonub ์ด์šฉํ•œ ์ž๋™ ๋ฐฐํฌ ์Šคํฌ๋ฆฝํŠธ ์‹คํ–‰์‹œํ‚ค๋Š” ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค๊ธฐ๋กœ ํ–ˆ์Šต๋‹ˆ๋‹ค.โ– ..
[Gitlab] ๊นƒ ๋žฉ ๋ฏธ๋Ÿฌ๋ง(gitlab mirroring, ๋ฐฑ์—… ์ฒด๊ณ„ ๊ตฌ์ถ•) โ–  ๋ฐฐ๊ฒฝํ˜„์žฌ ํšŒ์‚ฌ๋Š” ๊ฐœ๋ฐœ์„œ๋ฒ„๊ฐ€ 2์ค‘์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.ํŒŒํŠธ ๋‚ด์—์„œ ๊ฐœ๋ฐœ ์‹œ์ž‘๋˜๋Š” ํ™˜๊ฒฝ์€ GitLab๊ณผ Jenkins๊ฐ€ ํ˜ธ์ŠคํŒ…๋˜์–ด ์žˆ๋Š” ์˜จํ”„๋ ˆ๋ฏธ์Šค ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๊ณ  1์ฐจ ์„œ๋ฒ„์—์„œ 2์ฐจ ๊ฐœ๋ฐœ์„œ๋ฒ„๋กœ ๋ฏธ๋Ÿฌ๋ง ๋ฐ ๋ฐฐํฌ๊ฐ€ ์ด๋ค„์ง‘๋‹ˆ๋‹ค. 2์ฐจ ๊ฐœ๋ฐœ์„œ๋ฒ„๋Š” ์—ฌ๋Ÿฌ ํŒ€์—์„œ ์ฐธ์กฐํ•˜๊ณ ์žˆ๋Š”๋ฐ ๊ฐ„ํ—์ ์œผ๋กœ 1์ฐจ ๊ฐœ๋ฐœ์„œ๋ฒ„์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์žฅ์• ๋Š” ๊ฐœ๋ฐœ, ํ…Œ์ŠคํŠธ, ์ดํ–‰ ์ผ์ •์— ์ฐจ์งˆ์„ ์ดˆ๋ž˜ํ•˜์—ฌ, ํŒ€์˜ ์—…๋ฌด ํšจ์œจ์„ฑ์„ ์ €ํ•ดํ–ˆ์Šต๋‹ˆ๋‹ค.์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด, ์ €๋Š” ๋ฐฑ์—… ์ฒด๊ณ„๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ๋กœ ๊ฒฐ์‹ฌํ–ˆ์Šต๋‹ˆ๋‹ค.๊ทธ ๊ณผ์ •์„ gitLab ๋ฏธ๋Ÿฌ๋ง ๋ฐฉ๋ฒ•์„ ๊ณต์œ ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. โ–  GitLab ๋ฏธ๋Ÿฌ๋ง 1. ๋ฐฑ์—… gitlab์— ์†Œ์Šค๋ฅผ ๋ฐ›์„ ํƒ€๊ฒŸ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑ์ƒ๋žต... 2. ๋ฐฑ์—… gitlab์— ์ธ์ฆ์„ ์œ„ํ•œ access token์„..
[Kotlin] ๋ฐฑ์ค€ 1292 - ์‰ฝ๊ฒŒ ํ‘ธ๋Š” ๋ฌธ์ œ 1. ๋ฌธ์ œ๋™ํ˜ธ๋Š” ๋‚ด๋…„์— ์ดˆ๋“ฑํ•™๊ต๋ฅผ ์ž…ํ•™ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ๋™ํ˜ธ ์–ด๋จธ๋‹ˆ๋Š” ์ˆ˜ํ•™ ์„ ํ–‰ ํ•™์Šต์„ ์œ„ํ•ด ์‰ฝ๊ฒŒ ํ‘ธ๋Š” ๋ฌธ์ œ๋ฅผ ๋™ํ˜ธ์—๊ฒŒ ์ฃผ์—ˆ๋‹ค.์ด ๋ฌธ์ œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. 1์„ ํ•œ ๋ฒˆ, 2๋ฅผ ๋‘ ๋ฒˆ, 3์„ ์„ธ ๋ฒˆ, ์ด๋Ÿฐ ์‹์œผ๋กœ 1 2 2 3 3 3 4 4 4 4 5 .. ์ด๋Ÿฌํ•œ ์ˆ˜์—ด์„ ๋งŒ๋“ค๊ณ  ์–ด๋Š ์ผ์ •ํ•œ ๊ตฌ๊ฐ„์„ ์ฃผ๋ฉด ๊ทธ ๊ตฌ๊ฐ„์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.ํ•˜์ง€๋งŒ ๋™ํ˜ธ๋Š” ํ˜„์žฌ ๋” ์–ด๋ ค์šด ๋ฌธ์ œ๋ฅผ ํ‘ธ๋Š๋ผ ๋ฐ”์˜๊ธฐ์— ์šฐ๋ฆฌ๊ฐ€ ๋™ํ˜ธ๋ฅผ ๋„์™€์ฃผ์ž.2. ์ž…๋ ฅ์ฒซ์งธ ์ค„์— ๊ตฌ๊ฐ„์˜ ์‹œ์ž‘๊ณผ ๋์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆ˜ A, B(1 ≤ A ≤ B ≤ 1,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฆ‰, ์ˆ˜์—ด์—์„œ A๋ฒˆ์งธ ์ˆซ์ž๋ถ€ํ„ฐ B๋ฒˆ์งธ ์ˆซ์ž๊นŒ์ง€ ํ•ฉ์„ ๊ตฌํ•˜๋ฉด ๋œ๋‹ค.3. ํ’€์ด (์ƒ๊ฐ์˜ ํ๋ฆ„)1. ๊ตฌ๊ฐ„์˜ ํ•ฉ -> 3~7 ๊ตฌ๊ฐ„์˜ ํ•ฉ์ด๋ž€, 7๊นŒ์ง€ ๋ˆ„์ ๋œ ํ•ฉ - 2๊นŒ์ง€ ๋ˆ„์ ๋œ ํ•ฉ๊ณผ ๋™์ผํ•˜๋‹ค2. 3~7๊ตฌ๊ฐ„์˜ ..
[Kotlin] ๋ฐฑ์ค€ 2693 - N๋ฒˆ์งธ ํฐ ์ˆ˜ ๋ฌธ์ œ๋ฐฐ์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, N๋ฒˆ์งธ ํฐ ๊ฐ’์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.๋ฐฐ์—ด A์˜ ํฌ๊ธฐ๋Š” ํ•ญ์ƒ 10์ด๊ณ , ์ž์—ฐ์ˆ˜๋งŒ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. N์€ ํ•ญ์ƒ 3์ด๋‹ค.์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T(1 ≤ T ≤ 1,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ•œ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๋ฐฐ์—ด A์˜ ์›์†Œ 10๊ฐœ๊ฐ€ ๊ณต๋ฐฑ์œผ๋กœ ๊ตฌ๋ถ„๋˜์–ด ์ฃผ์–ด์ง„๋‹ค. ์ด ์›์†Œ๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.ํ’€์ด1. ์ˆซ์žํ˜• ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๋น„๊ตํ•œ๋‹ค.2. n๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์ฐพ์•„๋‚ด๋Š”๊ฒƒ -> ์ •๋ ฌ์„ ๊ณ ๋ คํ•œ๋‹ค. -> ๊ธฐ๋ณธ 1ํšŒ ์ •๋ ฌ๋กœ ํ’€์ด๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.3. ๋‚ด๋ถ€ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•œ ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(nlog(n))์œผ๋กœ ์‹œ๊ฐ„ ์•ˆ์œผ๋กœ ํ’€์ด๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ์ฑ„ํƒํ•œ๋‹ค.์†Œ์Šคimport java.util.*fun main() = with(System.`in`..
[Kotlin] ๋ฐฑ์ค€ 2609 - ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜(์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•) ๋ฌธ์ œ๋‘ ๊ฐœ์˜ ์ž์—ฐ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜์™€ ์ตœ์†Œ ๊ณต๋ฐฐ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.์ฒซ์งธ ์ค„์—๋Š” ๋‘ ๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ๋‘˜์€ 10,000์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋ฉฐ ์‚ฌ์ด์— ํ•œ ์นธ์˜ ๊ณต๋ฐฑ์ด ์ฃผ์–ด์ง„๋‹ค.ํ’€์ด1. ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋ฅผ ๊ตฌํ•œ๋‹ค. ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋Š” ํฐ๊ฐ’์„ ์ž‘์€๊ฐ’์œผ๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ, ๋‚˜๋จธ์ง€๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š๋Š” ์ฒซ ์‹œ์ ์˜ ๊ฐ’์ด๋‹ค.2. ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•์„ ์•Œ๊ณ ์žˆ๋ƒ๋Š” ๋ฌธ์ œ์ด๋‹ค.์ฝ”๋“œimport java.util.*fun main() = with(Scanner(System.`in`)) { var n1: Int = nextInt() var n2: Int = nextInt() val m: Int // ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ // ์˜ˆ์™ธ์ฒ˜๋ฆฌ n1 > n2๋กœ ๋ณ€ํ™˜ if(n2 > n1){ val temp ..
[Kotlin] ๋ฐฑ์ค€ 2309 - ์ผ๊ณฑ ๋‚œ์Ÿ์ด ๋ฌธ์ œ์™•๋น„๋ฅผ ํ”ผํ•ด ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋“ค๊ณผ ํ•จ๊ป˜ ํ‰ํ™”๋กญ๊ฒŒ ์ƒํ™œํ•˜๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ์—๊ฒŒ ์œ„๊ธฐ๊ฐ€ ์ฐพ์•„์™”๋‹ค. ์ผ๊ณผ๋ฅผ ๋งˆ์น˜๊ณ  ๋Œ์•„์˜จ ๋‚œ์Ÿ์ด๊ฐ€ ์ผ๊ณฑ ๋ช…์ด ์•„๋‹Œ ์•„ํ™‰ ๋ช…์ด์—ˆ๋˜ ๊ฒƒ์ด๋‹ค.์•„ํ™‰ ๋ช…์˜ ๋‚œ์Ÿ์ด๋Š” ๋ชจ๋‘ ์ž์‹ ์ด "๋ฐฑ์„ค ๊ณต์ฃผ์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด"์˜ ์ฃผ์ธ๊ณต์ด๋ผ๊ณ  ์ฃผ์žฅํ–ˆ๋‹ค. ๋›ฐ์–ด๋‚œ ์ˆ˜ํ•™์  ์ง๊ด€๋ ฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋˜ ๋ฐฑ์„ค๊ณต์ฃผ๋Š”, ๋‹คํ–‰์Šค๋Ÿฝ๊ฒŒ๋„ ์ผ๊ณฑ ๋‚œ์Ÿ์ด์˜ ํ‚ค์˜ ํ•ฉ์ด 100์ด ๋จ์„ ๊ธฐ์–ตํ•ด ๋ƒˆ๋‹ค.์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋ฐฑ์„ค๊ณต์ฃผ๋ฅผ ๋„์™€ ์ผ๊ณฑ ๋‚œ์Ÿ์ด๋ฅผ ์ฐพ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์•„ํ™‰ ๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๋‚œ์Ÿ์ด๋“ค์˜ ํ‚ค๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ํ‚ค๋Š” 100์„ ๋„˜์ง€ ์•Š๋Š” ์ž์—ฐ์ˆ˜์ด๋ฉฐ, ์•„ํ™‰ ๋‚œ์Ÿ์ด์˜ ํ‚ค๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๋ฉฐ, ๊ฐ€๋Šฅํ•œ ์ •๋‹ต์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€์ธ ๊ฒฝ์šฐ์—๋Š” ์•„๋ฌด๊ฑฐ๋‚˜ ์ถœ๋ ฅํ•œ๋‹ค.ํ’€์ด1. ํ•ฉ์ด 100์ด ๋˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ฐพ๋Š”๋‹ค.2. ๋‚œ์Ÿ์ด์˜ 7๋ช…์˜ ํ‚ค ์ดํ•ฉ์„ ๊ตฌํ•˜..
[Kotlin] ๋ฐฑ์ค€ 10870 - ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜ 5 ๋ฌธ์ œํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 0๊ณผ 1๋กœ ์‹œ์ž‘ํ•œ๋‹ค. 0๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 0์ด๊ณ , 1๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋Š” 1์ด๋‹ค. ๊ทธ ๋‹ค์Œ 2๋ฒˆ์งธ ๋ถ€ํ„ฐ๋Š” ๋ฐ”๋กœ ์•ž ๋‘ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜์˜ ํ•ฉ์ด ๋œ๋‹ค.์ด๋ฅผ ์‹์œผ๋กœ ์จ๋ณด๋ฉด Fn = Fn-1 + Fn-2 (n ≥ 2)๊ฐ€ ๋œ๋‹ค.n=17์ผ๋•Œ ๊นŒ์ง€ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋ฅผ ์จ๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597n์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, n๋ฒˆ์งธ ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ฒซ์งธ ์ค„์— n์ด ์ฃผ์–ด์ง„๋‹ค. n์€ 20๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜ ๋˜๋Š” 0์ด๋‹ค.ํ’€์ด1. n๋ฒˆ์งธ ์ž๋ฆฌ์˜ ๊ฐ’์€ n-1๋ฒˆ์งธ, n-2๋ฒˆ์งธ ๊ฐ’์˜ ํ•ฉ์ด๋‹ค. -> n-1, n-2๋ฒˆ์งธ ๊ฐ’์„ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ์–ด์•ผํ•œ๋‹ค. -> ๋ฐฐ์—ด ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ฑ„ํƒํ•ด์„œ ๊ฐ’์„ ์ €์žฅ..

728x90