河南理工的ACMer要开始组队了
Time Limit : 3000/1000ms (Java/Other) Memory Limit : 65535/32768K (Java/Other)
Total Submission(s) : 26 Accepted Submission(s) : 5
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
河南理工的new ACMer要开始组队了,ACM组队情况是3人一队,为什么是3人一队呢?有没有听过:3个臭皮匠顶个诸葛亮?现在,蛋蛋想知道,在所有的N位数中,有多少个数中有偶数个数字3,例如:13里面就有一个3!亲爱的ACMer,快来帮帮蛋蛋!
Input
第一行为一个整数T,代表有T组数据。(T<10000)
接下来T行,每行一个正整数N。(1<=N<=1000)
接下来T行,每行一个正整数N。(1<=N<=1000)
Output
每行输出一个整数,即方案数(由于结果可能很大,你只需要输出这个答案mod 12345的值)
Sample Input
1 2
Sample Output
73
Author
ac代码
#include<stdio.h>
int dp[1010][2];
void fun()
{
int i;
dp[1][0]=1;
dp[1][1]=8;
dp[2][0]=17;
dp[2][1]=73;
for(i=3;i<=1005;i++)
{
dp[i][1]=(dp[i-1][1]*9%12345+dp[i-1][0]%12345)%12345;
dp[i][0]=(dp[i-1][0]*9%12345+dp[i-1][1]%12345)%12345;
}
}
int main()
{
int n,t;
fun();
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
printf("%d\n",dp[n][1]);
}
}