์ „์ฒด ๊ธ€ 36

[SSAFY] ์‚ผ์„ฑ ์ฒญ๋…„ SW ์•„์นด๋ฐ๋ฏธ 8๊ธฐ ๋น„์ „๊ณต์ž ํ•ฉ๊ฒฉ ํ›„๊ธฐ #1. ์—์„ธ์ด ์ž‘์„ฑ, SW ์ ์„ฑ ์ง„๋‹จ

https://www.ssafy.com/ksp/jsp/swp/swpMain.jsp ์‚ผ์„ฑ ์ฒญ๋…„ SW ์•„์นด๋ฐ๋ฏธ ์‚ผ์„ฑ ์ฒญ๋…„ SW ์•„์นด๋ฐ๋ฏธ| ์†Œํ”„ํŠธ์›จ์–ด ๊ต์œก, ์ทจ์—… ์ง€์›, ์ฝ”๋”ฉ ๊ต์œก www.ssafy.com SSAFY 9๊ธฐ ๋ชจ์ง‘์„ ์‹œ์ž‘ํ•œ๋‹ค๋Š” ์†Œ์‹์„ ๋“ฃ๊ณ !! ๋ฏธ๋ฃจ๊ณ  ๋ฏธ๋ฃจ๋˜ ํ•ฉ๊ฒฉ ํ›„๊ธฐ๋ฅผ ๋“œ๋””์–ด์“ด๋‹ค..! SW ๊ฐœ๋ฐœ์ž๋ฅผ ๊ฟˆ๊พธ๋Š” ๋งŽ์€ ๋ถ„๋“ค์—๊ฒŒ ์ข‹์€ ๊ธฐํšŒ๊ฐ€ ๋˜์—ˆ์œผ๋ฉด ๐Ÿ™Œ ๐Ÿ“Œ ์—์„ธ์ด ์ž‘์„ฑ ์ค€๋น„ ์—์„ธ์ด๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์ „์—๋Š” SSAFY ํ™ˆํŽ˜์ด์ง€์—์„œ ์ปค๋ฆฌํ˜๋Ÿผ์„ ๊ผผ๊ผผํžˆ ์ฝ๊ณ  ๋ชฉํ‘œ๋ฅผ ์ •ํ•˜๋Š” ๊ฒƒ์„ ์ถ”์ฒœํ•œ๋‹ค. ์ปค๋ฆฌํ˜๋Ÿผ์„ ๊ผผ๊ผผํžˆ ํ™•์ธํ•˜๊ณ  ํ•„์š”ํ•œ ๊ณผ์ •๊ณผ ์ปค๋ฆฌํ˜๋Ÿผ์„ ์„ ํƒํ•˜๊ณ , ๊ทธ์— ๋งž์ถฐ์„œ ์—์„ธ์ด๋ฅผ ์ž‘์„ฑํ•ด๋‚˜๊ฐ€๋ฉด ์ˆ˜์›”ํ•˜๊ฒŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ“Œ ์—์„ธ์ด ์ž‘์„ฑ Tip ์—์„ธ์ด ์งˆ๋ฌธ์ด ๋ฐ”๋€”์ง€๋„ ๋ชจ๋ฅด์ง€๋งŒ.. 8๊ธฐ์˜ ์—์„ธ์ด ํ•ญ๋ชฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์•˜๋‹ค. ์‚ผ์„ฑ ์ฒญ๋…„ SW..

BOJ. 12100 2048 (Easy) (Python)

BOJ 12100. 2048 (Easy) ๋ฌธ์ œ https://www.acmicpc.net/problem/12100 12100๋ฒˆ: 2048 (Easy) ์ฒซ์งธ ์ค„์— ๋ณด๋“œ์˜ ํฌ๊ธฐ N (1 ≤ N ≤ 20)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๊ฒŒ์ž„ํŒ์˜ ์ดˆ๊ธฐ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. 0์€ ๋นˆ ์นธ์„ ๋‚˜ํƒ€๋‚ด๋ฉฐ, ์ด์™ธ์˜ ๊ฐ’์€ ๋ชจ๋‘ ๋ธ”๋ก์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. ๋ธ”๋ก์— ์“ฐ์—ฌ ์žˆ๋Š” ์ˆ˜๋Š” 2 www.acmicpc.net ๐Ÿ”ธ ์ ‘๊ทผ ๋ฐฉ๋ฒ• 5๋ฒˆ๋ฐ–์— ์•ˆ์›€์ง์ด๋ฏ€๋กœ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ๊ฒฝ์šฐ๋ฅผ ํƒ์ƒ‰ํ–ˆ๋‹ค. ๋ธŒ๋ฃจํŠธ ํฌ์Šค! ์™„ํƒ! ์•„๋ž˜๋กœ ์›€์ง์ด๋Š” ๊ฒฝ์šฐ์—๋Š” ๋ฐ‘์— ์žˆ๋Š” ๊ฒƒ๋“ค ๋จผ์ € ํ•ฉ์ณ์ง€๊ณ , ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์›€์ง์ด๋ฉด ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ๊ฒƒ๋“ค ๋จผ์ € ํ•ฉ์ณ์ง€๋Š” ๊ฒƒ์„ ๊ตฌํ˜„ํ•˜์ง€ ์œ„ํ•ด์„œ move Range๋ฅผ ๋งŒ๋“ค์–ด์„œ ๋ฒ”์œ„ ๊ฐ’์„ ์ง€์ •ํ•ด์ฃผ์—ˆ๋‹ค. 4 2 2 ์ธ ๊ฒƒ์„ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋ฐ€์–ด์„œ ํ•ฉ์น˜๋ฉด 4 ..

BOJ. 1725 ํžˆ์Šคํ† ๊ทธ๋žจ (Python)

BOJ 1725. ํžˆ์Šคํ† ๊ทธ๋žจ ๋ฌธ์ œ https://www.acmicpc.net/problem/1725 1725๋ฒˆ: ํžˆ์Šคํ† ๊ทธ๋žจ ์ฒซ ํ–‰์—๋Š” N (1 ≤ N ≤ 100,000) ์ด ์ฃผ์–ด์ง„๋‹ค. N์€ ํžˆ์Šคํ† ๊ทธ๋žจ์˜ ๊ฐ€๋กœ ์นธ์˜ ์ˆ˜์ด๋‹ค. ๋‹ค์Œ N ํ–‰์— ๊ฑธ์ณ ๊ฐ ์นธ์˜ ๋†’์ด๊ฐ€ ์™ผ์ชฝ์—์„œ๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ์นธ์˜ ๋†’์ด๋Š” 1,000,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ www.acmicpc.net ๐Ÿ”ธ ์ ‘๊ทผ ๋ฐฉ๋ฒ• ๊ฐ€์žฅ ํฐ ๋„“์ด๋ฅผ ๊ฐ€์ง€๋Š” ์ง์‚ฌ๊ฐํ˜•์„ ๊ตฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ตฌ๊ฐ„๋ณ„๋กœ, ๊ฐ€์žฅ ์ž‘์€ ์ง์‚ฌ๊ฐํ˜•์˜ ๋†’์ด๋ฅผ ๊ตฌํ•œ ํ›„์— ๊ทธ ๊ตฌ๊ฐ„์˜ ๊ธธ์ด๋งŒํผ (๊ฐ€๋กœ๊ธธ์ด) ๊ณฑํ•ด์ฃผ๋ฉด ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๊ตฌ๊ฐ„๋ณ„๋กœ ๊ฐ€์žฅ ์ž‘์€ ๋†’์ด๋ฅผ ๊ฐ€์ง€๋Š” ์ง์‚ฌ๊ฐํ˜•์˜ index๊ฐ’์„ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ €์žฅํ–ˆ๊ณ , ๋ถ„ํ•  ์ •๋ณต์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ€์žฅ ์ž‘์€ ์ง์‚ฌ๊ฐํ˜•์„ ์‚ฌ์šฉํ•ด ๋„“์ด๋ฅผ update..

3. Sort ์ •๋ ฌ

์ •๋ ฌ ์ •๋ ฌ 2๊ฐœ ์ด์ƒ์˜ ์ž๋ฃŒ๋ฅผ ํŠน์ • ๊ธฐ์ค€์— ์˜ํ•ด ์ž‘์€ ๊ฐ’๋ถ€ํ„ฐ ํฐ ๊ฐ’(์˜ค๋ฆ„์ฐจ์ˆœ : ascending), ํ˜น์€ ๊ทธ ๋ฐ˜๋Œ€์˜ ์ˆœ์„œ๋Œ€๋กœ(๋‚ด๋ฆผ์ฐจ์ˆœ : dexending) ์žฌ๋ฐฐ์—ด ํ•˜๋Š” ๊ฒƒ ํ‚ค : ์ž๋ฃŒ๋ฅผ ์ •๋ ฌํ•˜๋Š” ๊ธฐ์ค€์ด ๋˜๋Š” ํŠน์ • ๊ฐ’ ์ •๋ ฌ์˜ ์ข…๋ฅ˜ ๋ฒ„๋ธ” ์ •๋ ฌ ์นด์šดํŒ… ์ •๋ ฌ ์„ ํƒ ์ •๋ ฌ ํ€ต ์ •๋ ฌ ์‚ฝ์ž… ์ •๋ ฌ ๋ณ‘ํ•ฉ ์ •๋ ฌ ๋ฒ„๋ธ” ์ •๋ ฌ(Bubble Sort) ์ธ์ ‘ํ•œ ๋‘ ๊ฐœ์˜ ์›์†Œ๋ฅผ ๋น„๊ตํ•˜๋ฉฐ ์ž๋ฆฌ๋ฅผ ๊ณ„์† ๊ตํ™˜ํ•˜๋Š” ๋ฐฉ์‹ ์ •๋ ฌ๊ณผ์ • ์ฒซ๋ฒˆ์งธ ์›์†Œ๋ถ€ํ„ฐ ์ธ์ ‘ํ•œ ์›์†Œ๋ผ๋ฆฌ ๊ณ„์† ์ž๋ฆฌ๋ฅผ ๊ตํ™˜ํ•˜๋ฉด์„œ ๋งจ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ๊นŒ์ง€ ์ด๋™ํ•œ๋‹ค. ํ•œ ๋‹จ๊ณ„๊ฐ€ ๋๋‚˜๋ฉด ๊ฐ€์žฅ ํฐ ์›์†Œ๊ฐ€ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ๋กœ ์ •๋ ฌ๋œ๋‹ค. ๊ตํ™˜ํ•˜๋ฉฐ ์ž๋ฆฌ๋ฅผ ์ด๋™ํ•˜๋Š” ๋ชจ์Šต์ด ๋ฌผ ์œ„์— ์˜ฌ๋ผ์˜ค๋Š” ๊ฑฐํ’ˆ ๋ชจ์–‘๊ณผ ๊ฐ™๋‹ค๊ณ  ํ•˜์—ฌ ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ผ๊ณ  ํ•œ๋‹ค. ์‹œ๊ฐ„๋ณต์žก๋„ O(n²) ๋ฐฐ์—ด์„ ํ™œ์šฉํ•œ ๋ฒ„๋ธ” ์ •๋ ฌ def BubbleSor..

2. Array ๋ฐฐ์—ด

๋ฐฐ์—ด ๋ฐฐ์—ด ๋ฐฐ์—ด : ์ผ์ •ํ•œ ์ž๋ฃŒํ˜•์˜ ๋ณ€์ˆ˜๋“ค์„ ํ•˜๋‚˜์˜ ์ด๋ฆ„์œผ๋กœ ์—ด๊ฑฐํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ ์•„๋ž˜์˜ ์˜ˆ๋Š” 6๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ์ด๋ฅผ ๋ฐฐ์—ด๋กœ ๋ฐ”๊พธ์–ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด๋‹ค. Num0 = 0 Num1 = 1 Num2 = 2 Num3 = 3 Num4 = 4 Num5 = 5 Num = [0, 1, 2, 3, 4, 5] ๋ฐฐ์—ด์˜ ํ•„์š”์„ฑ ํ”„๋กœ๊ทธ๋žจ ๋‚ด์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ณ€์ˆ˜๊ฐ€ ํ•„์š”ํ•  ๋•Œ, ์ผ์ผ์ด ๋‹ค๋ฅธ ๋ณ€์ˆ˜๋ช…์„ ์ด์šฉํ•˜์—ฌ ์ž๋ฃŒ์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ๋น„ํšจ์œจ์ ์ผ ์ˆ˜ ์žˆ๋‹ค. ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•˜๋ฉด ํ•˜๋‚˜์˜ ์„ ์–ธ์„ ํ†ตํ•ด์„œ ๋‘˜ ์ด์ƒ์˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹จ์ˆœํžˆ ๋‹ค์ˆ˜์˜ ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธ์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ๋‹ค์ˆ˜์˜ ๋ณ€์ˆ˜๋กœ๋Š” ํ•˜๊ธฐ ํž˜๋“  ์ž‘์—…์„ ๋ฐฐ์—ด์„ ํ™œ์šฉํ•ด ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1์ฐจ์› ๋ฐฐ์—ด 1์ฐจ์› ๋ฐฐ์—ด์˜ ์„ ์–ธ ๋ณ„๋„์˜ ์„ ์–ธ ๋ฐฉ๋ฒ•์ด ์—†์œผ๋ฉด ๋ณ€์ˆ˜์—..

1. Algorithm ์•Œ๊ณ ๋ฆฌ์ฆ˜

์•Œ๊ณ ๋ฆฌ์ฆ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์œ ํ•œํ•œ ๋‹จ๊ณ„๋ฅผ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ ˆ์ฐจ๋‚˜ ๋ฐฉ๋ฒ•์ด๋‹ค. ์ฃผ๋กœ ์ปดํ“จํ„ฐ ์šฉ์–ด๋กœ ์“ฐ์ด๋ฉฐ, ์ปดํ“จํ„ฐ๊ฐ€ ์–ด๋–ค ์ผ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ๋‹จ๊ณ„์  ๋ฐฉ๋ฒ•์„ ๋งํ•œ๋‹ค. ์ฆ‰, ์–ด๋– ํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ ˆ์ฐจ๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค. ์ปดํ“จํ„ฐ ๋ถ„์•ผ์—์„œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€ ์˜์‚ฌ์ฝ”๋“œ(์Šˆ๋„์ฝ”๋“œ, Pseudocode)์™€ ์ˆœ์„œ๋„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ ์ธก์ • ์ข‹์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ •ํ™•์„ฑ : ์–ผ๋งˆ๋‚˜ ์ •ํ™•ํ•˜๊ฒŒ ๋™์ž‘ํ•˜๋Š”๊ฐ€ ์ž‘์—…๋Ÿ‰ : ์–ผ๋งˆ๋‚˜ ์ ์€ ์—ฐ์‚ฐ์œผ๋กœ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป์–ด๋‚ด๋Š”๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰ : ์–ผ๋งˆ๋‚˜ ์ ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€ ๋‹จ์ˆœ์„ฑ : ์–ผ๋งˆ๋‚˜ ๋‹จ์ˆœํ•œ๊ฐ€ ์ตœ์ ์„ฑ : ๋” ์ด์ƒ ๊ฐœ์„ ํ•  ์—ฌ์ง€์—†์ด ์ตœ์ ํ™”๋˜์—ˆ๋Š”๊ฐ€ ์ฃผ์–ด์ง„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋‹ค์–‘ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ฐ€๋Šฅ ⇒ ์–ด๋–ค ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š”๊ฐ€? ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์„ฑ๋Šฅ..