๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๋ฐ˜์‘ํ˜•

์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€3

[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 3 n^2 ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - n^2 ๋ฐฐ์—ด ์ž๋ฅด๊ธฐ ์ •์ˆ˜ n, left, right๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋‹ค์Œ ๊ณผ์ •์„ ๊ฑฐ์ณ์„œ 1์ฐจ์› ๋ฐฐ์—ด์„ ๋งŒ๋“ค๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. nํ–‰ n์—ด ํฌ๊ธฐ์˜ ๋น„์–ด์žˆ๋Š” 2์ฐจ์› ๋ฐฐ์—ด์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. i = 1, 2, 3, ..., n์— ๋Œ€ํ•ด์„œ, ๋‹ค์Œ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. 1ํ–‰ 1์—ด๋ถ€ programmers.co.kr Solution 1. ๋ฐฐ์—ด์— ์ˆซ์ž๊ฐ€ ์ฑ„์›Œ์ง€๋Š” ๊ทœ์น™์„ ํŒŒ์•…ํ•œ๋‹ค. ๋ฐฐ์—ด์— ์ˆซ์ž๊ฐ€ ์ฑ„์›Œ์ง€๋Š” ๊ทœ์น™์€ iํ–‰์— i๊ฐœ์˜ i๊ฐ€ ์ฑ„์›Œ์ง€๊ณ  ๊ทธ ๋‹ค์Œ i+1๋ถ€ํ„ฐ n๊นŒ์ง€ ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด n์ด 10์ด๊ณ  i๊ฐ€ 5๋ผ๋ฉด 5๋ฒˆ์งธ ํ–‰์€ 5๊ฐ€ 5๊ฐœ๊ฐ€ ๋จผ์ € ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. -> [5,5,5,5,5] ๊ทธ๋ฆฌ๊ณ  6(5+1)๋ถ€ํ„ฐ 10๊นŒ์ง€ ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. -> [5,5,5,5,5,6,7,8,9,10] 2. ์‹œ์ž‘๋˜๋Š” ํ–‰๊ณผ ์—ด, ๋๋‚˜๋Š” .. 2021. 12. 1.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 3 ๊ณต ์ด๋™ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ณต ์ด๋™ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ nํ–‰ m์—ด์˜ ๊ฒฉ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฉ์ž์˜ ๊ฐ ํ–‰์€ 0, 1, ..., n-1๋ฒˆ์˜ ๋ฒˆํ˜ธ, ๊ทธ๋ฆฌ๊ณ  ๊ฐ ์—ด์€ 0, 1, ..., m-1๋ฒˆ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ˆœ์„œ๋Œ€๋กœ ๋งค๊ฒจ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ด ๊ฒฉ์ž์— ๊ณต์„ ํ•˜๋‚˜ ๋‘๊ณ , ๊ทธ ๊ณต์— ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฟผ๋ฆฌ programmers.co.kr Solution ํ•ด๋‹น ๋ฌธ์ œ๋Š” ํšจ์œจ์„ฑ์ด ํ•ต์‹ฌ์ธ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. ์ตœ๋Œ€ ํ–‰๊ณผ ์—ด์ด ๊ฐ 10^9, ์ตœ๋Œ€ ์ฟผ๋ฆฌ ๊ฐฏ์ˆ˜๊ฐ€ 20๋งŒ์œผ๋กœ ์–ด๋งˆ์–ด๋งˆํ•œ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด ๋งŒ์•ฝ ๋ชจ๋“  ์œ„์น˜์—์„œ ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ๋Œ๋ฆด ๊ฒฝ์šฐ ์ตœ๋Œ€ 10^9 * 10^9 * 200000 ์ด ๋ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ดˆ๊ณผ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด์„  ๋ชฉ์ ์ง€์—์„œ๋ถ€ํ„ฐ ์ฟผ๋ฆฌ์˜ ์—ญ์ˆœ์œผ๋กœ ๋˜๋Œ์•„๊ฐ€๋ฉด์„œ ๊ฐ€๋Šฅํ•œ ๋ฒ”์œ„๊ฐ€ ์–ด๋””๊นŒ์ง€์ธ์ง€๋ฅผ ์ฒดํฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ก  ์„ค๋ช… ์•„๋ž˜์™€ ๊ฐ™์ด ๋ชฉ์ .. 2021. 11. 15.
[Swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์›”๊ฐ„ ์ฝ”๋“œ ์ฑŒ๋ฆฐ์ง€ 3 ๋น›์˜ ๊ฒฝ๋กœ ์‚ฌ์ดํด Problem ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋น›์˜ ๊ฒฝ๋กœ ์‚ฌ์ดํด ๊ฐ ์นธ๋งˆ๋‹ค S, L, ๋˜๋Š” R๊ฐ€ ์จ์ ธ ์žˆ๋Š” ๊ฒฉ์ž๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ด ๊ฒฉ์ž์—์„œ ๋น›์„ ์˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฉ์ž์˜ ๊ฐ ์นธ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ดํ•œ ์„ฑ์งˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋น›์ด "S"๊ฐ€ ์จ์ง„ ์นธ์— ๋„๋‹ฌํ•œ ๊ฒฝ์šฐ, ์ง์ง„ programmers.co.kr Solution 1. ์‚ฌ์ดํด์— ๋Œ€ํ•œ ๊ฐœ๋…์„ ์ดํ•ดํ•œ๋‹ค. ์‚ฌ์ดํด์€ ์ฒ˜์Œ ์‹œ์ž‘ํ•œ ์นธ์—์„œ ์ฒ˜์Œ ์‹œ์ž‘ํ•œ ๋ฐฉํ–ฅ์œผ๋กœ ๋‹ค์‹œ ๋˜๋Œ์•„ ์˜ฌ ๋•Œ ์‚ฌ์ดํด์ด ํ˜•์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ฆ‰ (0,0)์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋น›์„ ์ˆ๊ณ  ๋‹ค์‹œ (0,0)์—์„œ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ๋“ค์–ด์˜ค๋Š” ๋น›์ด ์žˆ๋‹ค๋ฉด ์‚ฌ์ดํด์ž…๋‹ˆ๋‹ค. 2. ์œ„์น˜์™€ ๋ฐฉํ–ฅ์„ ๊ธฐ์–ตํ•  Location ๊ตฌ์กฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค. struct Location:Equatable { var x:Int,y:Int,d:String } 3. ์‚ฌ์ด.. 2021. 9. 24.
728x90
๋ฐ˜์‘ํ˜•