首页 > 编程 > C++ > 正文

258. Add Digits (C++)

2019-11-06 06:26:34
字体:
来源:转载
供稿:网友

题目:

Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.

For example: Given num = 38, the PRocess is like: 3 + 8 = 11, 1 + 1 = 2. Since 2 has only one digit, return it.

翻译

给定一个非负整数num,重复地添加所有其数字,直到结果只有一个数字。

给定num = 38,过程如下:3 + 8 = 11,1 + 1 = 2。由于2只有一个数字,返回它。

解答:

http://blog.csdn.net/sbitswc/article/details/47975581 转载自这位大神 不得不服,不用公式都代码用的那么熟练

public int addDigits(int num) { while(num>=10){ num = (num/10)+num%10; } return num; }

公式:

public int addDigits(int num) { return (num-1)%9 + 1 ; }

官方给出的提示: https://en.wikipedia.org/wiki/Digital_root


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选