[Question] BOJ1904 - dp 튜플과 배열 시간 차이
Opened this issue · 0 comments
taek0622 commented
dp 문제를 풀 때 같은 부분을 tuple이 배열로 바뀌었을 뿐인데 시간이 4~5배 정도 차이가 나는 이유가 궁금하다.
우선 아래 코드는 BOJ1904번 문제를 tuple을 사용하여 푼 방법이다.
let N = Int(readLine()!)!
var dp = (1, 2)
if N < 3 {
print(N)
} else {
for _ in 3...N {
dp = (dp.1, (dp.0 + dp.1) % 15746)
}
print(dp.1)
}
이 부분에서 dp를 튜플로 풀면 12ms 정도의 시간이 걸리는데, 배열을 사용하면 56~60ms 정도의 시간이 걸린다.