GDKOI2016Day2 T2 QT与泰剧 解题报告

QT与泰剧

20分算法

直接暴力枚举每一个数,判断一下这个数是否满足条件(与 ST mod 3 同余,不是全由素数组成)即可。(求关于 T 的答案同理)

40分算法

递归构造由素数构成、与 S mod 3 同余的数,设其数量为 K ,再求出与 S mod 3同余的数的个数(设其为 U ),则与 S mod 3 同余的数的个数即为 KU 。(求关于 T 的求解同理)

100分算法

正解很明显是数位dp。
f[i][j][k]表示已经转移到了第i位,前i位的总和 mod 3=j,且前i位组成的数比原数前i位组成的数要小(k=0)或等于(k=1)或(k=2),并且全由素数组成的数有多少个。转移略。
这样就可以很快地求出与 S mod 3 同余,且全由素数构成的数了,大大降低了时间复杂度。

你可能感兴趣的:(解题报告,QT与泰剧,数位动态规划)