Leetcode: Add Digits
来源:互联网 发布:适合手机编程的输入法 编辑:程序博客网 时间:2024/05/01 21:09
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.
Follow up:
Could you do it without any loop/recursion in O(1) runtime?
不应该是循环的解法,找规律,每9个数最终的结果重复从1到9。wiki上说这叫digital root,对应9的最大整数倍后面的第几个数,有相应的公式。关键是找到这个规律。
class Solution {public: int addDigits(int num) { return num - (num - 1) / 9 * 9; }};
再,
class Solution {public: int addDigits(int num) { return (num - 1) % 9 + 1; }};
0 0
- [leetcode][math] Add Digits
- [leetcode] Add Digits
- 【leetcode】Add Digits【java】
- Leetcode: Add Digits
- LeetCode Add Digits
- [LeetCode] Add Digits
- leetcode 258: Add Digits
- LeetCode题解:Add Digits
- leetcode: Add Digits
- 258Add Digits - LeetCode
- leetCode #258 Add Digits
- [LeetCode 258] Add Digits
- LeetCode: Add Digits
- LeetCode:Add Digits
- leetcode--add digits
- leetcode Add Digits
- leetcode--Add Digits
- leetcode Add Digits
- hdu 1131 Count the Trees (卡特兰数的应用)
- SpringMVC+MyBatis整合(3)特别篇SpringMVC配置
- [线段树]hdu5316
- HDU 2276 & FZU 1692 (矩阵快速幂+循环同构优化)
- 梦想永远那么近——《白箱》后日谈
- Leetcode: Add Digits
- git使用
- 在VMware做虚拟映射进行网络连接的步骤
- 函数指针C++和回调函数
- 冈萨雷斯数字图像处理中科院&电子科大halcon/C++/Opencv视频教程下载
- Word Break
- crazyflie2.0原理图之STM32F405与nRF51822串口1M速率的接收和发送
- 【Android】高仿QQ 5.0+ UI
- 九宫格求解,结果为何不能输出?