dev/algorithm
BOJ / 2748๋ฒ / ํผ๋ณด๋์น ์ 2 [Go]
crscnt
2020. 7. 31. 21:00
๐ฉ๐ป๐ป ๋ฌธ์
2748๋ฒ: ํผ๋ณด๋์น ์ 2
๋ฌธ์ ํผ๋ณด๋์น ์๋ 0๊ณผ 1๋ก ์์ํ๋ค. 0๋ฒ์งธ ํผ๋ณด๋์น ์๋ 0์ด๊ณ , 1๋ฒ์งธ ํผ๋ณด๋์น ์๋ 1์ด๋ค. ๊ทธ ๋ค์ 2๋ฒ์งธ ๋ถํฐ๋ ๋ฐ๋ก ์ ๋ ํผ๋ณด๋์น ์์ ํฉ์ด ๋๋ค. ์ด๋ฅผ ์์ผ๋ก ์จ๋ณด๋ฉด Fn = Fn-1 + Fn-2 (n>=2)๏ฟฝ๏ฟฝ
www.acmicpc.net
โ๐ป ํ์ด
๐จ Go
package main
import (
"fmt"
"bufio"
"os"
)
func main() {
var n int
reader := bufio.NewReader(os.Stdin)
fmt.Fscanln(reader, &n)
writer := bufio.NewWriter(os.Stdout)
defer writer.Flush()
var fibMap = make(map[int]int, n)
fibMap[0] = 0
fibMap[1] = 1
fmt.Fprintln(writer, fibonacci(fibMap, n))
}
func fibonacci(fibMap map[int]int, n int) (result int) {
for i:=2; i<=n; i++ {
fibMap[i] = fibMap[i-1]+fibMap[i-2]
}
return fibMap[n]
}
728x90