咖啡


私信TA

用户名:Tianxn

访问量:138173

签 名:

十年OI一场空,不开LL见祖宗。

等  级
排  名 10
经  验 27303
参赛次数 10
文章发表 197
年  龄 22
在职情况 学生
学  校 西安电子科技大学
专  业 软件工程

  自我简介:

解题思路:


                最后别递归(因为重复子问题太多了),除非你用记忆化递归    T = O(nlogn);

                    

                最简单的DP吧!(T = O(n))。

注意事项:

参考代码:

#include <cstdio>
#include <cstring>
#include <string>
#include <cmath>
#include <functional> 
#include <iostream>
#include <algorithm>
using namespace std;
int dp[40];
int main()
{
	int N;
	scanf("%d", &N);
	for(int i = 1; i <= N; ++i)
	{
		if( i == 1 || i == 2)
		{
			dp[i] = 1;
		}
		else
		{
			dp[i] = dp[i-1] + dp[i-2];
		}
		if(i < N)
		{
			printf("%d ", dp[i]);
		}
	}
	printf("%d\n", dp[N]);
	return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »