- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我从亨利那里找到了答案
int sum = n % 9;
if (sum == 0) sum = 9;
这里
谁能解释一下相加和余数之间的关系?
我的逻辑也将如下所示,上面的链接中也提到了
int sum = 0;
while (n > 9 ) {
sum=0;
while (n > 0) {
int rem;
rem = n % 10;
sum = sum + rem;
n = n / 10;
}
n = sum;
}
但 2 行答案很棒。
最佳答案
在 Java 中,整数的范围是有限的,因此采用提醒具有 O(1) 渐近复杂度。
现在回答你的主要问题:
Can any one please explain how adding digits and remainder are related?
首先请注意,任何数字n
除以9与其数字之和相同。如果这看起来不是很明显,这里有一个证明草图。
证明
令 nk,...,n2,n1,n0
为数字 n
的 k+1
位。
令 10^p
表示 10 的 p
次方。
然后
n = 10^k * nk + ... + 100 * n2 + 10 * n1 + n0 =
= (10^k - 1) * nk + ... + (100-1) * n2 + (10-1) * n1 +
+ nk + ... + n2 + n1 + n0
现在请注意,最后一行是数字 n
S0 = nk + ... + n2 + n1 + n0
让
S1 = (10^k - 1) * nk + ... + (100-1) * n2 + (10-1) * n1
可以被 9 整除,因为 10^p - 1 = 9...9
对于所有 p > 0
都可以被 9 整除。
因为 n = S1 + S0
并且 S1 可以被 9 整除,所以 S0 % 9 = n % 9。
这就是我们想要证明的
现在让 S(n)
表示返回数字 n
的数字总和的函数,然后正如我们刚刚观察到的那样
n % 9 = S(n) % 9 = S(S(n)) % 9 = ...
我们可以继续处理,直到达到一位数。
这就是提醒和数字总和的关系。
关于java - 所有数字的总和,直到它在具有 o(1) 复杂度的 Java 中变成单个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38227733/
我需要在 JavaScript 中的笛卡尔坐标和球坐标之间进行转换。我在论坛上浏览了一下,没有找到我要找的东西。 现在我有这个: this.rho = sqrt((x*x) + (y*y) + (z*
有没有matrix3d可以像这样把矩形变成梯形的?我知道常规的 2d 矩阵变换只能以平行四边形结束,因为您只能有效地倾斜和旋转。 div { width: 300px; height:
关于这个例子(d3.j radial tree node links different sizes),我想知道是否可以在 d3.js 中混合径向树和直线树。 对于我的 jsFiddle 示例:htt
我尽量把标题写得最好,但我不确定如何准确描述这里发生的事情,所以请随时更正。 我想使用 › 直 Angular 引号 (›) 而不是 > 直 Angular 引号 (>),虽然 › 字符比 > 短,但
我正在尝试使用 CSS 创建一个具有圆边的矩形棱柱,如下图所示。 到目前为止,我已经指定了顶部和底部的边界半径。问题是我不知道如何让另一边的左右边缘向内 curl 。因此,拐 Angular 处不应有
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 去年关闭。 社区去年审查了是否重
首先,我刚刚开始学习 HTML 和 CSS。 我想如何使用这段代码: https://codepen.io/martinjkelly/pen/vEOBvL .container { width:
我是一名优秀的程序员,十分优秀!