Algorithm/Baekjoon
[λ°±μ€] (Swift) 11057λ² - μ€λ₯΄λ§ μ (dp, 3μ€ forλ¬Έ μ¬μ©)
κ°μ π₯
2022. 3. 25. 00:09
λ°μν
λ¬Έμ λ§ν¬
https://www.acmicpc.net/problem/11057
11057λ²: μ€λ₯΄λ§ μ
μ€λ₯΄λ§ μλ μμ μλ¦¬κ° μ€λ¦μ°¨μμ μ΄λ£¨λ μλ₯Ό λ§νλ€. μ΄λ, μΈμ ν μκ° κ°μλ μ€λ¦μ°¨μμΌλ‘ μΉλ€. μλ₯Ό λ€μ΄, 2234μ 3678, 11119λ μ€λ₯΄λ§ μμ΄μ§λ§, 2232, 3676, 91111μ μ€λ₯΄λ§ μκ° μλλ€. μ
www.acmicpc.net
λ΄κ° νΌ νμ΄ - λ§μμ΅λλ€!
let n = Int(readLine()!)!
var dp = Array(repeating: Array(repeating: 0, count: 10), count: 1001)
//sum ν¨μ ꡬν
func sum(_ numbers: [Int]) -> Int {
return numbers.reduce(0, +)
}
// νμ리μλ 무쑰건 1κ°μ©
for i in 0...9 {
dp[1][i] = 1
}
if n == 1 {
print(sum(dp[1]))
} else {
for i in 2..<n+1 {
for j in 0...9 {
for k in j...9 {
dp[i][j] = (dp[i][j] + dp[i-1][k]) % 10007
}
}
}
print(sum(dp[n])%10007)
}
λ°μν