[白俊]1003号:フィボナッチ関数
7460 ワード
質問する
https://www.acmicpc.net/problem/1003
に答えるコメントアニメーションプログラミングを使用!
https://www.acmicpc.net/problem/1003
に答える
fun fibonacci(array: Array<Int>, n: Int): Int{
if (n <= 1) return array[n]
return if (array[n] == 0) {
array[n] = fibonacci(array, n - 1) + fibonacci(array, n - 2)
array[n]
} else {
array[n]
}
}
fun main() {
val br = System.`in`.bufferedReader()
val bw = System.out.bufferedWriter()
val t = br.readLine().toInt()
val zeroArray = Array(41) { 0 }
zeroArray[0] = 1
zeroArray[1] = 0
val oneArray = Array(41) { 0 }
oneArray[0] = 0
oneArray[1] = 1
fibonacci(zeroArray, 40)
fibonacci(oneArray, 40)
repeat(t) {
val n = br.readLine().toInt()
bw.write("${zeroArray[n]} ${oneArray[n]}\n")
}
bw.close()
br.close()
}
コメントでもっと良い解題方法を書こう!
Reference
この問題について([白俊]1003号:フィボナッチ関数), 我々は、より多くの情報をここで見つけました https://velog.io/@kldaji/백준-1003번-피보나치-함수テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol