プログラマメモ2 - programmer no memo2

poj 1519 digital roots 2007/10/10

1519 -- Digital Roots

寝る前に挑戦したので、ものすごく簡単そうな問題を選びました。
簡単な問題をみつけるコツは、acceptedの数が多いものを選べばいいのかもしれません。

文字列で処理しないと、Runtime errorがでるかもしれません。

ちなみに問題タイトルのdigital rootsの意味がよくわかってないです。

package p1519_very_easy;

import java.util.Scanner;

public class Main {


public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);

while(true){
String l = scanner.next();
if("0".equals(l))break;
a(""+l);
}
}

static void a(String s){

char[] cs = s.toCharArray();
long i = 0;
for (char c : cs) {
i += Long.parseLong(c+"");
}

if(9 < i){
a(""+i);
return;
}
System.out.println(i);
}

}

: