์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
Tags
- ์๊ณ ๋ฆฌ์ฆ
- ๋ถํ ์ ๋ณต
- ์ ํด๋ฆฌ๋ ํธ์ ๋ฒ
- WebView
- ๋ถํ ํ์
- ์ด์งํ์
- dfs
- ๋นํธ์ฐ์ฐ์
- dp
- Queue
- ๋ฐฑํธ๋ํน
- ์คํ
- ์ฝํ
- BFS
- ๋ถํ ์ ๋ณต
- ios
- Swift
- ์ฝ๋ฉํ ์คํธ
- ๋ธ๋ฃจํธํฌ์ค
- WebApp
- ํ๋ก๊ทธ๋๋จธ์ค
- SwiftUI
- ๋ธ๋ฃจํธํฌ์ค ์๊ณ ๋ฆฌ์ฆ
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- ๋์ ํฉ
- ๋ฐฑ์ค
- ๋ฌธ์์ด
- ์์
Archives
- Today
- Total
MUKER_DEV with iOS
[swift] ๋ฐฑ์ค - 2805๋ฒ: ๋๋ฌด ์๋ฅด๊ธฐ ๋ณธ๋ฌธ
2805๋ฒ: ๋๋ฌด ์๋ฅด๊ธฐ
์ฒซ์งธ ์ค์ ๋๋ฌด์ ์ N๊ณผ ์๊ทผ์ด๊ฐ ์ง์ผ๋ก ๊ฐ์ ธ๊ฐ๋ ค๊ณ ํ๋ ๋๋ฌด์ ๊ธธ์ด M์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) ๋์งธ ์ค์๋ ๋๋ฌด์ ๋์ด๊ฐ ์ฃผ์ด์ง๋ค. ๋๋ฌด์ ๋์ด์ ํฉ์ ํญ์ M๋ณด
www.acmicpc.net
๋ฌธ์ ํธ๋ ๋ฐ ์์ด ๋์์ด ๋๋๋ก ๋์ ํ์ด์ ๊ฐ์ ๋ ํ์ด๋ฅผ ์ฌ๋ฆฝ๋๋ค.
๋ํ ํ์ด ํ ๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๊ณ ์ฐธ๊ณ ํ ๋งํ ํ์ด๋ ์ฌ๋ฆฝ๋๋ค.
- ๋ฌธ์ ์ ๋ฐ๋ผ ๋์ ํ์ด๋ง ์์ ์ ์์ต๋๋ค.
- ํด๋น ํ์ด๋ค์ ํ์ด ์ค ํ๋์ผ ๋ฟ ์ต์ ์ ํ์ด๋ ์๋ ์ ์์ต๋๋ค.
๋์ ํ์ด
let NM = readLine()!.split(separator: " ").map { Int($0)! }
let M = NM[1]
let tree = readLine()!.split(separator: " ").map { Int($0)! }
var left = 1
var right = tree.max()!
var result = 0
while left <= right {
let mid = (left+right) / 2
var m = 0
for j in tree { if j > mid { m += j - mid } }
if m >= M { left = mid + 1; result = mid }
else { right = mid - 1 }
}
print(result)
- ์ด๋ถํ์์ ์ด์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํ ์ ์์ต๋๋ค.
- ์์ง ์กฐ๊ฑด์ ๋ฐ๋ผ left๊ฐ์ด ๋์์ผํ๋์ง
right๋ mid์ ๊ฐ์ด ๋์์ผ ํ๋์ง ํท๊ฐ๋ฆฌ๋ค์..ใ
๊ทธ ๋ถ๋ถ์ ์ข ๋ ๋ณด์ถฉ ๊ณต๋ถํด์ผ๊ฒ ์ต๋๋ค.
'๐ค ์๊ณ ๋ฆฌ์ฆ > BAEKJOON' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[swift] ๋ฐฑ์ค - 19757๋ฒ: ํฐ ์ A + B (0) | 2023.02.19 |
---|---|
[swift] ๋ฐฑ์ค - 1676๋ฒ: ํฉํ ๋ฆฌ์ผ 0์ ๊ฐ์ (0) | 2023.02.18 |
[swift] ๋ฐฑ์ค - 1874๋ฒ: ์คํ ์์ด (0) | 2023.02.17 |
[swift] ๋ฐฑ์ค - 1654๋ฒ: ๋์ ์๋ฅด๊ธฐ (0) | 2023.02.16 |
[swift] ๋ฐฑ์ค - 1966๋ฒ: ํ๋ฆฐํฐ ํ (0) | 2023.02.16 |