打怪兽
在北航OJ新手区游荡遇到了这个题。https://biancheng.love/problem/10/index
某一天遇到了一个怪兽,它会不断打你,每次你可以选择刚它,也可以选择怂。然而连续刚两次可怜的你就会死。。。
问:怪兽打你n次,你总共有多少种策略?
n=1:刚,怂
n=2 刚怂,怂怂,怂刚
n=3 刚怂怂,刚怂刚,怂怂怂,怂怂刚,怂刚怂
咦貌似是传说中的Fib数列。
于是快速AC。事后回想起这个觉得不爽,为何是Fib数列?
证:
每次攻击要么是刚,要么是怂,连续刚两次就会死。
所以如果有幸能抗到第n+1次攻击,前面的肯定是没有连续刚的。
- 如果上一次是刚,下一次肯定是怂。
- 如果上一次是怂,下一次爱刚刚,爱怂怂。
所以啊,下一次敢刚肯定是上一次怂了。下一次想怂就怂。
于是这样:g表示刚,s表示怂。
f(n)=g(n)+