[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] ํ๋ก๊ทธ๋๋จธ์ค ์ํด๋ฆฌ ์ฑ๋ฆฐ์ง 9์ฃผ์ฐจ ์ ๋ ฅ๋ง์ ๋๋ก ๋๋๊ธฐ
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - 9์ฃผ์ฐจ 9 [[1,3],[2,3],[3,4],[4,5],[4,6],[4,7],[7,8],[7,9]] 3 7 [[1,2],[2,7],[3,7],[3,4],[4,5],[6,7]] 1 programmers.co.kr Solution 1. ์ ์ ๋ง์ ์ฐ๊ฒฐ ์ ๋ณด๋ฅผ connect ์ด์ค๋ฐฐ์ด์ ๋ง๋ค์ด์ ์ ์ฅํ๋ค. var connect = Array(repeating: Array(repeating: false, count: n+1), count:n+1) wires.forEach { connect[$0[0]][$0[1]] = true connect[$0[1]][$0[0]] = true } 2. ์ฐ๊ฒฐ๋ ์ ์ ์ ํ๋์ฉ ์๋ผ๋ณด๋ฉฐ ์ผ์ชฝ๊ณผ ์ค๋ฅธ์ชฝ์ ๊ฐฏ์๋ฅผ ์ธ์ฃผ๊ณ ์ต์๊ฐ๊ณผ ๋น๊ตํฉ๋๋ค. ์ฐ์ ์ต์๊ฐ์ ..
2021. 10. 7.
[Swift] ํ๋ก๊ทธ๋๋จธ์ค ์ํด๋ฆฌ ์ฑ๋ฆฐ์ง 8์ฃผ์ฐจ ์ต์์ง์ฌ๊ฐํ
Problem ์ฝ๋ฉํ
์คํธ ์ฐ์ต - 8์ฃผ์ฐจ [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] 120 [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] 133 programmers.co.kr Solution 1. ๊ฐ๋ก์ ์ธ๋ก๊ฐ ๋ด๊ธด ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ค. let sorted = sizes.map{$0.sorted()} 2. ๊ฐ๋ก์ ์ธ๋ก์ ๊ฐ์ฅ ํฐ ๊ฐ์ ๊ณฑํด์ค๋ค. return sorted.map{$0[0]}.max()! * sorted.map{$0[1]}.max()! Source Code
2021. 9. 30.