站外提求助
  • 板块学术版
  • 楼主wangyihao121
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/2 10:24
  • 上次更新2024/8/2 11:28:55
查看原帖
站外提求助
993322
wangyihao121楼主2024/8/2 10:24

小 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。

样例 #1 样例输入 #1 6 样例输出 #1 6,Yes 样例 #2 样例输入 #2 371 样例输出 #2 1,No 样例 #3 样例输入 #3 8786888 样例输出 #3 8,47,11,2,No 提示 【样例 3 解释】

在样例 3 3 中, ? n 是 8786888 8786888,首先输出末尾数字 8,然后输出不含 3 的倍数的各位数字和 47,同理输出 11 , 2 11,2,最后输出判断结果 No。

【数据范围】

30% 的数据满足 1 ≤ ? ≤ 1 0^ 9 ;

50% 的数据满足 1 ≤ ? ≤ 1 0^ 18

;

100% 的数据满足 1 ≤ ? ≤ 1 0^10

。

2024/8/2 10:24
加载中...