标签:10 各位 num 相加 9b 258 abc 99a
题目链接:https://leetcode-cn.com/problems/add-digits/
一.题解思路
1.常规
双重while循环,外层的判断是否已经为个位数,里层的做各位相加,先对10取余再除以10,直到所有位置上的数字都加完。
2.数学
比如说对三位数 abc = 100a+10b+c 而言,它各位相加会得到 a+b+c,也就是说相加的过程其实是abc - (a+b+c) = 99a+9b,即 a+b+c = abc - (99a+9b) = abc - 9×(11a+b)。因此,每一次相加其实是对 abc ,或者说对我们的num做了%9的操作。
而如果num恰好能被9整除,返回的则是9。
二.心得
没想到数学的方法,也许还是太浮躁,缺少了思考的过程。共勉。
标签:10,各位,num,相加,9b,258,abc,99a 来源: https://www.cnblogs.com/SelmaS/p/15958401.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。