์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- Swift
- ios
- ์๊ณ ๋ฆฌ์ฆ
- ๋นํธ์ฐ์ฐ์
- dp
- ๋ฐฑ์ค
- Queue
- ๋ธ๋ฃจํธํฌ์ค
- ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ
- ๋์ ํฉ
- ์ฝํ
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- SwiftUI
- ์ด์งํ์
- ์คํ
- ๋ถํ ํ์
- ๋ฐฑํธ๋ํน
- BFS
- WebView
- dfs
- ๋ฌธ์์ด
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋ถํ ์ ๋ณต
- ์์
- ์ฝ๋ฉํ ์คํธ
- ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ
- WebApp
- ๋ถํ ์ ๋ณต
Archives
- Today
- Total
MUKER_DEV with iOS
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๊ฐ๊น์ด ์ ๋ณธ๋ฌธ
๋ฌธ์ ํ์ด๋ฅผ ์ง๊ด์ ์ผ๋ก ์ดํดํ ์ ์๋๋ก ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ์์ ํ์ด์
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ ํ์ด๋ก ๋๋์ด ๊ณต๋ถํ๊ณ ์์ต๋๋ค.
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ์์ ํ์ด
import Foundation
func solution(_ array:[Int], _ n:Int) -> Int {
var num = 100
var result = 0
for i in array.enumerated() {
var temp = n - i.element
if temp < 0, num > -temp {
num = -temp
result = array[i.offset]
}
if temp >= 0, num > temp {
num = temp
result = array[i.offset]
}
if num == temp {
result = array[i.offset]
}
}
return result
}
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ ํ์ด
import Foundation
func solution(_ array:[Int], _ n:Int) -> Int {
return array.min { (abs($0 - n), $0) < (abs($1 - n), $1) }!
}
- min(by:) ํจ์๊ฐ ํด๋น ํ์ด์์ ์ด๋ป๊ฒ ์ฐ์๋์ง ํด์ํ๋๋ฐ ์ค๋๊ฑธ๋ ธ๋คใ
- min(by:) ํจ์๋ ํด๋ก์ ํํ๋ก ์์ ๊ฐ๊ณผ ๋ค์ ๊ฐ์ ๋น๊ตํ์ฌ ์ ์ผ ์์ ์๋ฅผ ์ถ๋ ค๋ธ๋ค.
- ํด๋น ํ์ด๋ ๋น๊ตํ๋ ๊ฐ์ ํํํํ๋ก ์ค์ ์ ๋๊ฐ(๋ฐฐ์ด์ ๊ฐ - n)์ด ๊ฐ๋ค๋ฉด
- ํํ์ ํน์ง์ธ ๋ค์ ์ซ์๋ฅผ ๋น๊ตํ๊ธฐ ๋๋ฌธ์ ๋ฐฐ์ด์ ๊ฐ์ด ์์์ชฝ์ ๋ฆฌํดํด์ฃผ๊ฒ ๋๋ค.
func solution(_ array:[Int], _ n:Int) -> Int {
return array.min { a, b in
(abs(a - n), a) < (abs(b - n), b)
}!
}
- ์์ ๊ฐ์ ์๋ฆฌ๋ก ํด๋ก์ ๋ฅผ ๋ณด๋ค ๋ ์ฝ๊ธฐ ํธํ ํํ๋ก ์จ๋ดค๋ค.
'๐ค ์๊ณ ๋ฆฌ์ฆ > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ํ ๋ฒ๋ง ๋ฑ์ฅํ ๋ฌธ์ (1) | 2022.12.27 |
---|---|
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์์ด๊ฐ ์ซ์ด์ (0) | 2022.12.27 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ (0) | 2022.12.26 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์์ ๋ํ๊ธฐ (0) | 2022.12.26 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ปจํธ๋กค ์ ํธ (0) | 2022.12.25 |