Advertisement

位数问题(递推)

阅读量:

在所有由N位组成的数值中,存在多少个数值包含偶数个数字3?鉴于最终结果可能较大,只需将该数值除以12345后所得的余数作为答案输出。

输入

输入一个数值N,其中N的取值范围不超过1000。

小标题

计算包含偶数个数字3的数值个数。

输入样例解析

2

输出样例

73

代码:

复制代码
    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<cstdlib>
    #include<algorithm>
    using namespace std;
    int f[1001][2];
    int main()
    {
    int n , x = 9;
    cin>>n;
    f[1][0] = 9;
    f[1][1] = 1;
    for(int i = 2 ; i <= n ; i++)
    {
        if(i == n)
            x = 8;
        f[i][0] = (f[i-1][0] * x + f[i-1][1]) % 12345;
        f[i][1] = (f[i-1][1] * x 

全部评论 (0)

还没有任何评论哟~