AtCoder Beginner Contest 178 D.Redistribution

AtCoder Beginner Contest 178 D.Redistribution

题目链接

在这里插入图片描述
先 DFS,找规律发现:
a [ n ] = a [ n − 1 ] + a [ n − 3 a[n]=a[n-1]+a[n-3 a[n]=a[n1]+a[n3
AC代码如下:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const ll mod=1e9+7;
ll a[2005];
void pre(){
    
    
    a[0]=a[1]=a[2]=1;
    for(int i=3;i<=2000;i++) a[i]=(a[i-3]+a[i-1])%mod;
}
int main()
{
    
    
    pre();
    int n;
    cin>>n;
    if(n<3) cout<<0;
    else cout<<a[n-3];
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43765333/article/details/108587746
今日推荐