描述
在所有的N位数中,有多少个数中有偶数个数字3?
输入
一行给出数字N,N<=1000
输出
如题 mod12345
样例输入
2
样例输出
73
简单的dp,不过我的转移好像不太一样
program noi_9272;
var dp,f:array[0..1000,0..2] of longint;
n,i,j:longint;
begin dp[1][1]:=8; f[1][2]:=1; readln(n); if n=1 then begin writeln(9); halt; end; for i:=2 to n do begin dp[i][1]:=(dp[i-1][1]+dp[i-1][2])*9 mod 12345; //共i位,第i位不是3,3的个数为偶数 dp[i][2]:=(f[i-1][1]+f[i-1][2]) mod 12345; //共i位,第i位是2, 3的个数为偶数 f[i][1]:=(f[i-1][1]+f[i-1][2])*9 mod 12345; //共i位,第i位不是3,3的个数为奇数
f[i][2]:=(dp[i-1][1]+dp[i-1][2]) mod 12345; //共i位 第i位是3, 3的个数为奇数
end;
writeln((dp[n][1]+dp[n][2]) mod 12345);
end.