์ฐ์ํฉ(1912๋ฒ)
Silver 2
#๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
https://www.acmicpc.net/problem/1912
๋ฌธ์ ๋ด์ฉ
๋ฌธ์ ์ ๊ทผ
์ ์๋ค์ด ์ฃผ์ด์ง๋ฉด, ์ฐ์๋ ์ ์์ ํฉ ์ค์ ์ต๋๊ฐ์ ์ฐพ์์ ์ถ๋ ฅํ๋ค.
์๊ฐ์ ํ์ด 1์ด์ด๊ณ , ์ ์๋ 10๋ง ๊ฐ๊น์ง ๋ค์ด์ค๊ธฐ ๋๋ฌธ์ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ์ด ๊ฐ์ ๋๋ค.
์ด ๋ฌธ์ ๋ฅผ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ์ผ๋ก ํ๊ธฐ ์ํด์๋ ์ด๋ป๊ฒ ํด์ผ ํ ๊น?
์ ๋ ฅ ์์ 1์ ์๋ก ๋ค์ด ๋ณด๊ฒ ๋ค.
10
10 -4 3 1 5 6 -35 12 21 -1
์ ์๋ฅผ ํ๋์ฉ ๋ณด๋ฉด์ ์ต๋๊ฐ์ ์ฐพ์๋ณด์.
์ฒซ ๋ฒ์งธ ์๋ 10์ด๊ธฐ ๋๋ฌธ์ ์ฐ์๋ ์์ ํฉ์ 10์ด๋ค.
๋ ๋ฒ์งธ ์๋ -4์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 6์ด๋ค. 6๊ณผ -4์ค์ 6์ด ๋ ํฌ๋ค.
์ธ ๋ฒ์งธ ์๋ 3์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 9์ด๋ค. 9์ 3์ค์ 9๊ฐ ๋ ํฌ๋ค.
๋ค ๋ฒ์งธ ์๋ 1์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 10์ด๋ค. 10๊ณผ 1์ค์ 10์ด ๋ ํฌ๋ค.
๋ค์ฏ ๋ฒ์งธ ์๋ 5์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 15๋ค. 15๊ณผ 5์ค์ 15๊ฐ ๋ ํฌ๋ค.
์ฌ์ฏ ๋ฒ์งธ ์๋ 6์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 21์ด๋ค. 21๊ณผ 6์ค์ 21์ด ๋ ํฌ๋ค.
์ผ๊ณฑ ๋ฒ์งธ ์๋ -35๋ค. ์ฐ์๋ ์์ ํฉ์ -14์ด๋ค. -14์ -35์ค์ -14๊ฐ ๋ ํฌ๋ค.
์ฌ๋ ๋ฒ์งธ ์๋ 12์ด๋ค. ์ฐ์๋ ์์ ํฉ์ -2์ด๋ค. -2์ 12์ค 12๊ฐ ๋ ํฌ๋ค. ์ฐ์๋ ์์ ํฉ์ 12๋ก ๋ณ๊ฒฝํ๋ค.
์ํ ๋ฒ์งธ ์๋ 21์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 33์ด๋ค. 33๊ณผ 21์ค 33์ด ๋ ํฌ๋ค.
์ด ๋ฒ์งธ ์๋ -1์ด๋ค. ์ฐ์๋ ์์ ํฉ์ 32์ด๋ค. 32์ -1์ค 32๊ฐ ๋ ํฌ๋ค.
์ด 10๋ฒ์ ํ์ ๊ฒฐ๊ณผ์์ ์ ๋ต์ด ์๋ค. ์ ๋ต์ 33์ด๋ค.
์์ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ต์ ๊ตฌํ๋ฉด ์ต๋๊ฐ์ด ํฌํจ๋์ด ์๋ ๋ฆฌ์คํธ๋ฅผ ์ป์ ์ ์๋ค.
๊ทธ ๋ฆฌ์คํธ์์ ์ต๋๊ฐ์ ๊ตฌํด์ฃผ๋ฉด ๋๋ค.
์ ํ์์ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑํ๋ค.
max(res[i - 1] + numbers[i], numbers[i])
res๊ฐ ํ์ฌ๊น์ง์ ์ต๋๊ฐ์ด๊ณ , numbers๊ฐ ์ ๋ ฅ๋ฐ์ ์ ์๋ค์ผ ๋, ๋ ์์ ํฉ์ด ์ฐ์๋ ์์ ํฉ์ด๋ค.
์ฐ์๋ ์์ ํฉ๊ณผ ์ ๋ ฅ ์ ์ ์ค ๋ ํฐ ๊ฐ์ ์ฐพ๋๋ค.
๋ฌธ์ ํด๊ฒฐ ์ฝ๋
import java.io.BufferedReader
import java.io.InputStreamReader
import kotlin.math.max
fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
val numberCnt = readLine().toInt()
val numbers = readLine().split(" ").map { it.toInt() }
val res = Array(numberCnt) { 0 }
res[0] = numbers[0]
for (i in 1 until numbers.size) {
res[i] = max(res[i - 1] + numbers[i], numbers[i])
}
println(res.max())
}
๋ฌธ์ ํ์ด
์ ๋ ฅ๋ฐ์ ์ ์๋ค์ ์ต๋๊ฐ์ res์ ์ ์ฅํ ๊ฒ์ด๋ค. res์ ์ด๊ธฐ ๊ฐ์ธ 0๋ฒ์งธ ๊ฐ์ ์ ๋ ฅ๋ฐ์ ์ ์๋ค์ ์ฒซ ๋ฒ์งธ ์ ์๋ก ์ง์ ํ๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฐ๋ณตํ๋ฉด์ ์ต๋๊ฐ์ ๊ตฌํด ์ค๋ค.
๋ฌธ์ ํด๊ฒฐ ๊ณผ์
ํ๋ฒํ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ ๋ฌธ์ .
์ผ๋จ ๋๋ ์ฒ์์ ์ ํ์์ด ์๊ฐ์ด ์ ๋์ ๋ฌธ์ ๊ฒ์ํ์ ์ฐธ๊ณ ํ๋ค.
์ธ์ ์ฏค ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ์ ๋ง์คํฐํ ์ ์์๊น?
'๐ฏ | ๋ฐฑ์ค > ๐ | Silver' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kotlin, S4] ๋ฐฑ์ค 1337๋ฒ ์ฌ๋ฐ๋ฅธ ๋ฐฐ์ด (0) | 2024.08.29 |
---|---|
[Kotlin, S3] ๋ฐฑ์ค 13305๋ฒ ์ฃผ์ ์ (0) | 2024.08.27 |
[Kotlin, S2] ๋ฐฑ์ค 2716๋ฒ ์์ญ์ด ๋งค๋ฌ๊ธฐ (0) | 2024.08.25 |
[Kotlin] ๋ฐฑ์ค 16506๋ฒ CPU (0) | 2024.08.23 |
[Kotlin, S5] ๋ฐฑ์ค 11068๋ฒ ํ๋ฌธ์ธ ์ (0) | 2024.08.23 |