偶数个3
时间限制:1000 ms | 内存限制:65535 KB
难度:1
描述
在所有的N位数中,有多少个数中有偶数个数字3?
输入
第一行为一个整数T,代表有T组数据。(T<10000)
接下来T行,每行一个正整数N。(1<=N<=1000)
输出
每行输出一个整数,即方案数(由于结果可能很大,你只需要输出这个答案mod 12345的值。)。
样例输入
1
2
样例输出
73
#include<stdio.h>
#include<iostream>
using namespace std;
int a[10005];
int b[10005];
int main()
{
int T;
int n;
cin>>T;
while(T--)
{
cin>>n;
a[1] = 8;
a[2] = 73;
b[1] = 1;
for(int i = 2; i <= n; i++)
{
b[i] = (9*b[i-1]+ a[i-1])%12345;
}
for(int i = 3 ; i <= n; i++)
{
a[i] = (b[i-1] + 9*a[i-1])%12345;
}
cout<<a[n]<<endl;
}
}