Given a non-negative integer num
, repeatedly add all its digits until the result have only one digit.
For example:
Given num = 38
, the process is like: 3 + 8 = 11
, 1 + 1 = 2
. Since have only one 2
digit, return it.
Title: A glance, pure number +, add to single digit.
Idea: According to the previous implementation of the addition operation of the set, I think for a long, this is afraid to use the logical operation, with or not XOR or the same or ... After a long time on the paper calculation did not, began to doubt IQ, can not help to go online search, know to see such a string of numbers 123456789123456 .... Suddenly wake up, tube you which finally in accordance with the rules of the operation of a regular, what is the law, see you evenly divisible more than 9 what, so, the following:
public int adddigits (int num) {
Return (num-1)%9+1;
}
I feel this kind of problem with my sister to do the Olympic Games, you do not train of thought, there is no way, is to find the law.
leetcode| ADD Digits