蓝桥杯 2023年省赛真题
C/C++ 大学G组
试题 A: 工作时长
试题 B: 与或异或
试题 C: 翻转
试题 D: 阶乘的和
试题 E: 公因数匹配
试题 F: 奇怪的数
试题 G: 太阳
试题 H: 子树的大小
试题 I: 高塔
试题 J: 反异或 01 串
除去第 F \rm F F 题,其他题目在其他组别都有出现过,这里就不重写了。
奇怪的数
时间限制: 1.0 s 1.0\mathrm s 1.0s 内存限制: 256.0 M B 256.0\mathrm{MB} 256.0MB 本题总分: 15 15 15 分
【问题描述】
小蓝最近在找一些奇怪的数,其奇数数位上是奇数,而偶数数位上是偶数。同时,这些数的任意 5 5 5 个连续数位的和都不大于 m m m。
例如当 m = 9 m = 9 m=9 时, 10101 10101 10101 和 12303 12303 12303 就是奇怪的数,而 12345 12345 12345 和 11111 11111 11111 则不是。
小蓝想知道一共有多少个长度为 n n n 的上述的奇怪的数。你只需要输出答案对 998244353 998244353 998244353 取模的结果。
【输入格式】
输入一行包含两个整数 n , m n, m n,m,用一个空格分隔。
【输出格式】
输出一行包含一个整数表示答案。
【样例输入】
5 5
【样例输出】
6
【评测用例规模与约定】
对于 30 % 30\% 30% 的评测用例, n ≤ 12 n ≤ 12 n≤12;
对于 60 % 60\% 60% 的评测用例, n ≤ 5000 n ≤ 5000 n≤5000;
对于所有评测用例, 5 ≤ n ≤ 2 × 1 0 5 , 0 ≤ m ≤ 50 5 ≤ n ≤ 2 × 10^5,0 ≤ m ≤ 50 5≤n≤2×105,0≤m≤50。
动态规划
因为是要校验连续的 5 5 5 个数位上的数字之和是否大于 m m m,自然能设计出状态 f i , a , b , c , d f_{i,a,b,c,d} fi