โจ๏ธ Language/swift
[ํ๋ก๊ทธ๋๋จธ์ค LV.1] ๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด
hyebin (Helia)
2023. 1. 31. 14:13
๋ฐ์ํ
ํ๋ก๊ทธ๋๋จธ์ค LV.1 ๋ชจ์
๋๋์ด ๋จ์ด์ง๋ ์ซ์ ๋ฐฐ์ด
๋ฌธ์ ์ค๋ช
array์ ๊ฐ element ์ค divisor๋ก ๋๋์ด ๋จ์ด์ง๋ ๊ฐ์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ ๋ฐฐ์ด์ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด ์ฃผ์ธ์.
divisor๋ก ๋๋์ด ๋จ์ด์ง๋ element๊ฐ ํ๋๋ ์๋ค๋ฉด ๋ฐฐ์ด์ -1์ ๋ด์ ๋ฐํํ์ธ์.
์ ํ ์ฌํญ
- arr์ ์์ฐ์๋ฅผ ๋ด์ ๋ฐฐ์ด์ ๋๋ค.
- ์ ์ i, j์ ๋ํด i ≠ j ์ด๋ฉด arr [i] ≠ arr [j]์ ๋๋ค.
- divisor๋ ์์ฐ์์ ๋๋ค.
- array๋ ๊ธธ์ด 1 ์ด์์ธ ๋ฐฐ์ด์ ๋๋ค.
์ ์ถ๋ ฅ ์
arr | divisor | return |
[5, 9, 7, 10] | 5 | [5, 10] |
[2, 36, 1, 3] | 1 | [1, 2, 3, 36] |
[3, 2, 6] | 10 | [-1] |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- arr์ ์์ ์ค 5๋ก ๋๋์ด ๋จ์ด์ง๋ ์์๋ 5์ 10์ ๋๋ค. ๋ฐ๋ผ์ [5, 10]์ ๋ฆฌํดํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- arr์ ๋ชจ๋ ์์๋ 1๋ก ๋๋์ด ๋จ์ด์ง๋๋ค. ์์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด [1, 2, 3, 36]์ ๋ฆฌํดํฉ๋๋ค.
์ ์ถ๋ ฅ ์ #3
- 3, 2, 6์ 10์ผ๋ก ๋๋์ด ๋จ์ด์ง์ง ์์ต๋๋ค. ๋๋์ด ๋จ์ด์ง๋ ์์๊ฐ ์์ผ๋ฏ๋ก [-1]์ ๋ฆฌํดํฉ๋๋ค.
์ ์ถ
func solution(_ arr:[Int], _ divisor:Int) -> [Int] {
var re = [Int]()
for i in arr{
if i % divisor == 0{
re.append(i)
}
}
return (re.count == 0) ? [-1] : re.sorted()
}
๋ฐฐ์ด์ ํ๋์ฉ ์ฒดํฌํด์ divisor๋ก ๋๋์ด ๋จ์ด์ง๋ค๋ฉด re ๋ฐฐ์ด์ ์ถ๊ฐํ๋ค.
re๋ฐฐ์ด์ด ๋น์ด์๋ค๋ฉด -1์ ๋ฐฐ์ด์ ๋ด์ ๋ฐํํ๊ณ , ๋น์ด์์ง ์๋ค๋ฉด re ๋ฐฐ์ด์ ์ ๋ ฌํ ํ ๋ฐํํ๋ค.
๋ค๋ฅธ ํ์ด
func solution(_ arr:[Int], _ divisor:Int) -> [Int] {
var array = arr.filter{$0%divisor == 0}.sorted()
return array.isEmpty ? [-1] : array
}
๋ฐ์ํ