SP16758 SNGDIV69 - Divisible by 6 and 9
题目描述
给定一个正整数 num (> 0),它由 n (> 0) 位数字组成。num 表示为 N $_{1}$ N $_{2}$ N $_{3}$ ... N $_{n-2}$ N $_{n-1}$ N $_{n}$,这里 N $_{i}$ 是 num 从左到右的第 i 位(1 ≤ i ≤ n)。将 num 的数字分别按降序和升序排列,得到两个新的正整数 num $_{dsc}$ 和 num $_{asc}$。计算两者的差值 diff $_{num}$ = num $_{dsc}$ - num $_{asc}$。如果 diff $_{num}$ 可以同时被 6 和 9 整除,则称 num 为「魔数」。
定义数字和 sum $_{digits}$ 的计算过程如下:
设置 **number = diff $_{num}$**,然后不断将 **number** 的各位数字求和,直至 **number** 小于或等于 10。此时 sum $_{digits}$ 的值即为最终 number 的值。
输入格式
第一行是一个整数 t (< 101),表示测试用例的数量。每个测试用例的第一行给出一个整数 n (< 10001),接下来 n 行中每行提供一个整数 num (< 10 $^{100}$)。
输出格式
对于每个测试用例,输出 n 行,每行包括以下信息(中间不留空格):
1. **Y** 表示 num 是魔数,**N** 表示 num 不是魔数。
2. 设 sum $_{digits}$ = c,则输出:如果 c 是 0,输出 **ZER**;如果 c 是 1,输出 **ONE**;如果 c > 1,则:
- 输出 **EP** 如果 c 是偶数且质数;
- 输出 **ENP** 如果 c 是偶数但不是质数;
- 输出 **OP** 如果 c 是奇数且质数;
- 输出 **ONP** 如果 c 是奇数但不是质数。
3. 如果 num 不是魔数,设 diff $_{num}$ = d,则输出:
- **EQL** 如果 d 不能被 6 和 9 整除;
- **LTN** 如果 d 只能被 9 整除但不能被 6 整除;
- **GTN** 如果 d 只能被 6 整除但不能被 9 整除。
**本翻译由 AI 自动生成**