给定数据组数 T,每组输入一个整数 x。要求对 x 的各数位进行重新排列,得到新的咒语(排列时必须改变原有顺序,即不能保留原来的排列)。新咒语允许以 0 开头。要求统计有多少个不同的咒语满足其各位数字之和为素数。
首先计算给定数字的数位和,并判断该和是否为素数;如果是素数,则利用组合数学公式计算所有可能的全排列数(考虑重复数字的情况),再减去原始排列得到答案;如果数位和不是素数,则直接输出零。
魔法师研究一种由数字符文构成的咒语,每个符文是 0 到 9 之间的一个数字,整个咒语可以用一个正整数表示。
魔法师可以将咒语中的所有符文重新排列,生成新的咒语。新咒语允许以 0 开头,但不能与原来的符文序列完全相同。定义咒语的“能量值”为其所有符文的数字之和。如果一个咒语的能量值是素数,则称该咒语为有效咒语。
现在给出一个原始咒语,请你计算能生成多少个不同的有效咒语。
约束:
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册