您的位置:首页 > 其它

HDOJ 1163 Eddy's digital Roots

2017-10-31 15:36 411 查看
HDACM1163

做此题需要知道:九余数

九余数定理:

一个数对九取余,得到的数称之为九余数;

一个数的九余数 等于 它的各个数位上的数之和的九余数!

本题就是用次方法来做,

例如:

4^4 = 256

256%9 = 4

2+5+6 = 13

1+3 = 4

所以只有对n^n%9就可以得出结果,同时需注意余数为0是表示和为9

n^n%9转化成 –> ((n%9*n)%9*n)%9….

import java.util.Scanner;

public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (sc.hasNext()) {
int n = sc.nextInt();
if (n==0) {
break;
}
int num = 1;
for (int i = 0; i < n; i++) {
num = num*n%9;
}
if (num==0) {
System.out.println(9);
continue;
}
System.out.println(num);
}
sc.close();
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: