今天在脉脉上看到一个哥们的面试题是这个题目,当时自己想了想感觉有点思路就写了个简单的代码!
for (int i = 0; i < 720; i++) {
if (6 * i % 360 >= 0.5 * i && isNewCircle == true) {
System.out.println(i);
isNewCircle = false;
}
if (6 * i % 360 < 0.5 * i) {
isNewCircle = true;
}
}
思路主要是:
从0点开始到12点看作一次完整循环,所以一共是720分钟,
从0点开始,如果想要重合则分针转过的角度必须大360度,
所以考虑每次分针每次转过的角度跟360取模,当取到的值第一次大于等

本文探讨了如何计算时针和分针在一天中相遇的周期。初始算法错误地得出每65或66分钟相遇一次,但随后通过分析得出正确答案:在大约65.4545分钟时会相遇。考虑到分针的移动是整分钟跳跃,实际上是在65到66分钟之间相遇。

6649

被折叠的 条评论
为什么被折叠?



