Problem Description
在所有的N位数中,有多少个数中有偶数个数字3?由于结果可能很大,你只需要输出这个答案对12345取余的值。
Input
输入一个数N(1<=N<=1000),输入以0结束。
Output
对于每一个N输出有多少个数中有偶数个数字3。
Sample Input
2 0
Sample Output
73 【样例说明】 在所有的2位数字,包含0个3的数有72个,包含2个3的数有1个,共73个
// Hint: 在所有的2位数字,包含0个3的数有72个,包含2个3的数有1个,共73个
#include<iostream>
using namespace std;
int odd[1001],even[1001];
int main()
{
int i,n;
odd[1]=1; even[1]=8;
for(i=2;i<1001;i++)
{
odd[i]=(even[i-1]+odd[i-1]*9)%12345;
even[i]=(even[i-1]*9+odd[i-1])%12345;
}
while(cin>>n)
{
if(n==0) break;
cout<<even[n]%12345<<endl;
}
return 0;
}