解题思路:
注意事项:
参考代码:
/* even[i]:表示i位数中偶数个3的个数 odd[i]:表示i位数中奇数个3的个数 1、末位为3的情况: even[i] = odd[i - 1] odd[i] = even[i - 1] 2、末位非3的情况 even[i] = even[i - 1] * 9; odd[i] = odd[i - 1] * 9; 综上: even[i] = even[i - 1] * 9 + odd[i - 1] odd[i] = odd[i - 1] * 9 + even[i - 1] */ #include <iostream> using namespace std; const int Mod = 12345; int n; int even[1005], odd[1005]; int main() { cin >> n; even[1] = 8, odd[1] = 1; for (int i = 2; i <= n; ++i) { even[i] = (even[i - 1] * 9 + odd[i - 1]) % Mod; odd[i] = (odd[i - 1] * 9 + even[i - 1]) % Mod; } cout << even[n] << endl; return 0; }
0.0分
31 人评分
2006年春浙江省计算机等级考试二级C 编程题(1) (C语言代码)浏览:661 |
钟神赛车 (C语言代码)浏览:590 |
C语言程序设计教程(第三版)课后习题10.7 (用指针求解)浏览:1458 |
数列有序 (C语言代码)浏览:930 |
整除的尾数 (C语言代码)浏览:809 |
小O的数字 (C语言代码)浏览:1406 |
【偶数求和】 (C语言代码)浏览:430 |
拯救雅典娜浏览:1237 |
金额的中文大写浏览:3479 |
Manchester- A+B for Input-Output Practice (V)浏览:1181 |