1.我们知道,一个数是3的倍数 等价于 它的数位和 是 3的倍数。也就是数位和%3=0
然后我们知道0~9里有 4个%3=0的数 , 分别是0,3,6,9 3个%3=1的数 , 分别是1,4,7 3个%3=2的数 , 分别是2,5,8
所以考虑动态规划:dp[i][j] 表示前i个数模3余j的方案数
现有一个长度为 n 的数字模式串 s,其中某些字符因污损而无法辨认,用 '?' 表示。你需要将每个 '?' 替换为一个十进制数字(0-9),使得最终得到的整数没有前导零(即最高位不能是 0),并且该整数能被 3 整除。请你计算所有满足条件的替换方案总数,并对 109+7 取模输出。
数据范围:
第一行包含一个整数 n (1≤n≤105),表示字符串的长度。
By signing up a CodeFun2000 universal account, you can submit code and join discussions in all online judging services provided by us.