#3528. 判断 6 的倍数
判断 6 的倍数
题目描述
小 Z 现在给你一个巧算 $6$ 的倍数的方法,设 $n$ 代表被判断的数,步骤如下:
- 当 $n$ 是一位数时,若 $n$ 是 $0$ 或 $6$,那么它是 $6$ 的倍数。
- 当 $n$ 是多位数时,若 $n$ 的个位数是奇数,那么 $n$ 不是 $6$ 的倍数;若 $n$ 的个位数是偶数,则计算 $n$ 的各位数字和,若各位数字之和仍是多位数,则继续计算各位数字和,直到数字和是一位数,如果该一位数是 $3$ 的倍数,则 $n$ 是 $6$ 的倍数。
请编写程序模拟以上判断规则并完成以下功能:
- 根据输入的任意数,首先输出此数的末尾数字
- 当需要计算各位数字和时,输出每次计算的结果,为了加快计算的速度,每次计算各位数字之和时不累加 $3$ 的倍数的数字。
**根据以上判断规则,若 $n$ 是 $6$ 的倍数输出 **Yes
,否则输出 No
。
输入格式
输入一个自然数 $n$。
输出格式
一行,若干个整数,用英文半角逗号分隔。
**第一个数是 $n$ 的末尾数字,后面为若干个按规则计算出的各位数字和,最后为 **Yes
或 No
。
6
6,Yes
371
1,No
8786888
8,47,11,2,No
提示
【样例 3 解释】
**在样例 $3$ 中,$n$ 是 $8786888$,首先输出末尾数字 $8$,然后输出不含 $3$ 的倍数的各位数字和 $47$,同理输出 $11,2$,最后输出判断结果 **No
。
【数据范围】
$30\%$ 的数据满足 $1\le n \le 10^9$;
$50\%$ 的数据满足 $1\le n \le 10^{18}$;
$100\%$ 的数据满足 $1\le n \le 10^{100}$。