๋ฐ์ํ
๐ ๋ฌธ์ ๋งํฌ
https://www.acmicpc.net/problem/1912
๐ ๋ฌธ์ ํ์ด ์์ด๋์ด
๊ฐ์ฅ ๊ธฐ์ด์ ์ธ dp๋ฌธ์ ๋ก ์ด๋ฏธ ํ์ด๋ดค๋ ๋ฌธ์ ๋ผ ์ด๋ ต๊ฒ ์๊ฐํ์ง ์์๋ค.
dp ์๋ ํ์ฌ์์น์idx-1 ๊น์ง์ ํฉ๊ณผ ํด๋น arr[idx] ๊ฐ์ ๋น๊ตํด๋ณธ ํ ์ต๋๊ฐ์ ๋ฃ์ด์ค๋ค. ์์์๋ถํฐ ์ฐจ๋ก๋๋ก ์ฐจ๊ณก์ฐจ๊ณก ๋ํด์ง ๊ฐ์ ํ์ฌ๊ฐ์ ๋ํ๋๊ฒ ๋ ํฐ์ง, ํ์ฌ๊ฐ๋ง ๋ฐ๋ผ๋ณด๋๊ฒ ๋ ํฐ์ง ํ์ธํ๋ ๊ฒ์ด๋ค!
๐ ์ ์ฒด ์์ค์ฝ๋
let n = Int(String(readLine()!))!
let arr = readLine()!.split(separator: " ").map{ Int(String($0))! }
var dp = Array(repeating: -9999, count: 100001) // ์ต์๊ฐ 0์ผ๋ก ํ๋ฉด ์๋ผ!!!!!
dp[0] = arr[0]
for i in 1..<n {
dp[i] = max(arr[i], arr[i] + dp[i - 1])
}
print(dp.max()!)
๋ฐ์ํ
'Algorithm > Baekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] (Swift) 14502๋ฒ - ์ฐ๊ตฌ์ (BFS ๋ฌธ์ ํ์ด) (0) | 2022.07.14 |
---|---|
[๋ฐฑ์ค] (Swift) 2579๋ฒ - ๊ณ๋จ ์ค๋ฅด๊ธฐ (dp ๊ธฐ๋ณธ๋ฌธ์ , ์ค๋ฒ3) (0) | 2022.07.12 |
[๋ฐฑ์ค] (Swift) 2636๋ฒ - ์น์ฆ (BFS ํ์ด) (0) | 2022.07.06 |
[๋ฐฑ์ค] (Swift) 16234๋ฒ - ์ธ๊ตฌ์ด๋ (BFS ํ์ด) (0) | 2022.07.06 |
[๋ฐฑ์ค] (Swift) 16947๋ฒ - ์์ธ ์งํ์ฒ 2ํธ์ (BFS, DFS ๋์์ ์ฌ์ฉํ๋ ๋ฌธ์ ) (0) | 2022.06.30 |