题目链接
题目大意
在所有的N位数中,有多少个数中有偶数个数字3?注意要对12345取模
题目思路
显然是dp,注意最后要分类讨论
代码
#include<cstdio>
using namespace std;
long long n,dp[1010][2];
int main()
{
scanf("%lld",&n);
dp[1][0]=8,dp[1][1]=1;
for(int i=2;i<=n;i++)
{
dp[i][1]=(dp[i-1][1]*9+dp[i-1][0]*1)%12345;
dp[i][0]=(dp[i-1][1]*1+dp[i-1][0]*9)%12345;
}
if(n==1)
{
printf("9");
}
else
{
printf("%lld\n",dp[n][0]);
}
return 0;
}