๋ฌธ์ ์ค๋ช
์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์ฐ๋ [4,3,2]๋ฅผ ๋ฆฌํด ํ๊ณ , [10]๋ฉด [-1]์ ๋ฆฌํด ํฉ๋๋ค.
์ ํ ์กฐ๊ฑด
- arr์ ๊ธธ์ด 1 ์ด์์ธ ๋ฐฐ์ด์ ๋๋ค.
- ์ธ๋ฑ์ค i, j์ ๋ํด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์ ๋๋ค.
์ ์ถ๋ ฅ ์
arr | return |
[4, 3, 2, 1] | [4, 3, 2] |
[10] | [-1] |
๋ด ๋ฌธ์ ํ์ด
func solution(_ arr:[Int]) -> [Int] {
let min = arr.min()
let notMinArr = arr.filter{$0 != min}
return notMinArr.isEmpty ? [-1] : notMinArr
}
- min ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ์ฃผ์ด์ง ๋ฐฐ์ด์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ฐพ์์
- fillter๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ์์ ์ค min์ด ์๋ ๊ฒ๋ง ์ฐพ์ ์๋ก์ด ๋ฐฐ์ด์ ์์ฑํด์ฃผ์์
- isEmpty๋ฅผ ์ด์ฉํ์ฌ ์ต์ ๊ฐ์ ์ ์ธํ ๋ฐฐ์ด์ด ๋น์ด์์ ๊ฒฝ์ฐ [-1]์,
์๋ ๊ฒฝ์ฐ์ ์๋ก ๋ง๋ ๋ฐฐ์ด์ ๋ฆฌํดํด ์ฃผ์์
๐ก ํผ๋๋ฐฑ
- min, isEmpty ํจ์์ ์กด์ฌ๋ฅผ ๊ณต๋ถํ๊ฒ ๋์์
- fillter๋ฅผ ์์ง ์ต์ํ๊ฒ ์ฌ์ฉํ์ง ๋ชปํ์ฌ ๋ฌธ์ ํ์ด์ ์๊ฐ๋ณด๋ค ์๊ฐ์ด ๊ฑธ๋ ธ์.
filter๋ฅผ ๋ ์ ๊ทน์ ์ผ๋ก ์ฌ์ฉํด๋ด์ผ ํ ๋ฏ
๋ฌธ์
'3๏ธโฃ Swift > Problem Solving' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Swift Algorithm] ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ Programmers(Lv.1) (0) | 2021.06.14 |
---|---|
[Swift Algorithm] ์ง์์ ํ์ Programmers(Lv.1) (0) | 2021.06.07 |
[Swift Algorithm] ์ ์ ์ ๊ณฑ๊ทผ ํ๋ณ Programmers(Lv.1) (0) | 2021.06.07 |
[Swift Algorithm] ์ ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ Programmers(Lv.1) (0) | 2021.06.07 |
[Swift Algorithm] ์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ Programmers(Lv.1) (0) | 2021.06.06 |
๋๊ธ