链接:
来源:牛客网
超越学姐非常喜欢自己的名字,以至于英文字母她只喜欢“c”和“y”。因此超越学姐喜欢只含有“c”和“y”的字符串,且字符串中不能出现两个连续的“c”。请你求出有多少种长度为n的字符串是超越学姐喜欢的字符串。答案对1e9+7取模
思路:dp
d p [ i ] [ 0 ] dp[i][0] dp[i][0]:第i个位置放字符c
d p [ i ] [ 1 ] dp[i][1] dp[i][1]:第i个位置放字符y
#include<bits/stdc++.h>
using namespace std;
#define maxn 1000010
#define mod 1000000007
typedef long long ll;
ll dp[maxn][2];
int main(){int n; scanf("%d",&n);dp[1][0]=dp[1][1]=1;for(int i=2;i<=n;i++){dp[i][0]=dp[i-1][1]%mod;dp[i][1]=(dp[i-1][0]+dp[i-1][1])%mod;}printf("%lldn",(dp[n][0]+dp[n][1])%mod);return 0;
}
本文发布于:2024-02-02 01:42:12,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170681344440600.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |