์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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
- ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ
- ์๊ณ ๋ฆฌ์ฆ
- ios
- SwiftUI
- dfs
- ๋ถํ ์ ๋ณต
- ์คํ
- ๋ฐฑ์ค
- dp
- ๋์ ํฉ
- ๋ถํ ์ ๋ณต
- ํ๋ก๊ทธ๋๋จธ์ค
- ๋ธ๋ฃจํธํฌ์ค
- WebApp
- Swift
- ์ฝ๋ฉํ ์คํธ
- WebView
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- ๋นํธ์ฐ์ฐ์
- ๋ฌธ์์ด
- BFS
- ๋ถํ ํ์
- ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ
- ๋ฐฑํธ๋ํน
- ์ฝํ
- ์์
- ์ด์งํ์
- Queue
Archives
- Today
- Total
MUKER_DEV with iOS
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ฐ์๋ ์์ ํฉ ๋ณธ๋ฌธ
๐ค ์๊ณ ๋ฆฌ์ฆ/programmers
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ฐ์๋ ์์ ํฉ
MUKER 2023. 1. 5. 16:14
๋ฌธ์ ํ์ด๋ฅผ ์ง๊ด์ ์ผ๋ก ์ดํดํ ์ ์๋๋ก ๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ์์ ํ์ด์
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ ํ์ด๋ก ๋๋์ด ๊ณต๋ถํ๊ณ ์์ต๋๋ค.
- ๋ฌธ์ ์ ๋ฐ๋ผ ํ๋์ ํ์ด๋ง ์์ ์ ์์ต๋๋ค.
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ์ง ์์ ํ์ด
import Foundation
func solution(_ num:Int, _ total:Int) -> [Int] {
var result = [total/num]
var count = 1
for i in 1..<num {
if i % 2 != 0 {
result.append(total/num + count)
} else {
result.append(total/num - count)
count += 1
}
}
return result.sorted()
}
- total / num ์ ๊ฐ์ ์ฐ์๋ ์์ ์ค์ฌ๊ฐ์ผ๋ก ๋๊ณ
- ๋ฐ๋ณต๋ฌธ์ ํตํด ์ค์ฌ๊ฐ์ ๊ธฐ์ค์ผ๋ก ๋๊ณ +1, -1, +2, -2... ์ฐจ๋ก๋๋ก num์ ๊ฐ๋งํผ ๋ฐ๋ณต ํ์๋ฅผ ๋๋ฆฝ๋๋ค.
- ํด๋น ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ๋ฉด ์ํ๋ result๊ฐ์ด ๋์ต๋๋ค.
๊ณ ์ฐจํจ์๋ฅผ ์ฌ์ฉํ ํ์ด
import Foundation
func solution(_ num:Int, _ total:Int) -> [Int] {
var i = (total - (num * (1 + num) / 2)) / num
return (1...num).map { $0 + i }
}
- ๋ฑ์ฐจ์์ด์ ํฉ๊ณต์์ ์ฌ์ฉํด์ ํ์ดํ์ต๋๋ค.
- ๋ฑ์ฐจ์์ด์ ํฉ๊ณต์์ ์๋์ ๊ฐ์ต๋๋ค.
ํญ์ ๊ฐ์ * (์ฒซํญ + ๋ํญ) / 2
- total - (๋ฑ์ฐจ์์ด ํฉ๊ณต์) / num ๋ฅผ ํ๋ฉด ์ฐ๋ฆฌ๊ฐ ์ํ๋ ๋ฐฐ์ด์ ์ฒซ๋ฒ์งธ ๊ฐ๋ณด๋ค 1์ด ์์ ์ซ์๊ฐ ๋์ค๊ฒ ๋ฉ๋๋ค.
- ๊ทธ๋ผ ํญ์ ๊ฐ์๋งํผ ๋ฐ๋ณตํ๋ฉฐ ๊ฐ ๊ฐ๋ง๋ค ์ฒซ๋ฒ์งธ ๊ฐ์ ๋ํด์ ๋ฐฐ์ด๋ก ๋ฆฌํดํ๋ฉด ์ํ๋ result ๋ฐฐ์ด์ด ๋์ต๋๋ค.
'๐ค ์๊ณ ๋ฆฌ์ฆ > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ํน์ดํ ์ ๋ ฌ (0) | 2023.01.07 |
---|---|
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ์ผ์ด์ฌ (0) | 2023.01.07 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ํํ (0) | 2023.01.05 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๊ฒน์น๋ ์ ๋ถ์ ๊ธธ์ด (0) | 2023.01.04 |
[swift] ํ๋ก๊ทธ๋๋จธ์ค - ๋ฑ์ ๋งค๊ธฐ๊ธฐ (0) | 2023.01.04 |