蓝桥杯 进击的青蛙

蓝桥杯 进击的青蛙

注意其实dp 前三个点的判断。

#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
typedef long long ll;
const int N =1e6+10;
ll n,m=0;
struct cmp{
	bool operator()(const int&a,const int&b) const{
		return a>b;
	}
};
const int MOD = 1000000007;
ll a[N];
int main(){
 	cin >> n;
 	for(int i =1;i<=n;i++){
 		cin>>a[i];
	}
	a[1] == 0? a[1]=1:a[1]=0;
	a[2] == 0? a[2] =a[1]+1:a[2]=0;
	a[3] == 0? a[3] =a[1]+a[2]+1:a[3]=0;
    for(int i =4;i<=n;i++){
    	if(a[i]) a[i]=0;
    	else 
    	a[i]=((a[i-1]%MOD)+(a[i-2]%MOD)+(a[i-3]%MOD))%MOD;

	}
	//for(int i = 1;i<=n;i++)cout<<a[i]<<" ";
    if(a[n]) cout<< a[n];
    else cout<<"No Way!";
	return 0;
}
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-11 11:24
大家还是用ai改吧,我心疼得要死,就当花钱买教训吧,人家直接拿完钱就跑路了
程序员小白条:简历修改700....神奇,又不是帮你面试,咋的,简历修改从双非变92了还是没实习变成有大厂实习了
点赞 评论 收藏
分享
程序员小白条:这比例牛逼,750:1
点赞 评论 收藏
分享
06-12 16:23
已编辑
小米_软件开发(准入职员工)
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务