题目描述 Description
孙猴子从石头中蹦出来后神通广大,做了花果山的猴王。有一次,一只猴子偷了孙猴子的中餐(就是几个桃子)藏到树洞中,孙猴子大发雷霆,立刻把这只猴子打死了(因剧情需要,其实孙猴子没那么残忍),他来到树洞前,上面有一把密码盘,上面写着:
0 1 0 2 4 7 14 26 48 89 ……
输入描述 Input Description
参见样例
输出描述 Output Description
参见样例
样例输入 Sample Input
样例输入1:5
样例输入2:9
样例输出 Sample Output
样例输出1:4
样例输出2:48
数据范围及提示 Data Size & Hint
数据范围:n<=75
提示:对于PASCAL 选手 1:在n=75的极限值,qword(PASCAL)可以存储
2:qword不可以作为循环变量
3:第an+an+1+an+2+1=an+3
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
unsigned long long m[100] = {0,0,1,0};
int n;
int i, j, k;
cin >> n;
if (n == 1)
cout << 0;
else if (n == 2)
cout << 1;
else if (n == 3)
cout << 0;
else
{
for (i = 4; i <= n; ++i)
m[i] = m[i - 1] + m[i - 2] + m[i - 3] + 1;
cout << m[n];
}
return 0;
}