文章
52
粉丝
68
获赞
22
访问
11.5k
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
long long a[80];
a[0]=a[1]=1;
a[2]=2;
for(int i=3;i<80;i++){
a[i]=a[i-1]+a[i-2]+a[i-3];
}
while(cin>>n){
cout<<a[n]<<endl;
}
}
大家不要看到dp就怕,这个问题很简单的,dp就是存储,本质上也是暴力搜索,但是有存储状态,所以更快达到上次的状态,本题就是三个加在一起就是下一个,因为数据量很大,所以要用longlong存
登录后发布评论
暂无评论,来抢沙发