C/C++ Program to Compute the Angle Between Hands of a Clock
- 时间:2020-09-11 08:17:29
- 分类:网络文摘
- 阅读:160 次
Given two numbers, hour and minutes. Return the smaller angle (in sexagesimal units) formed between the hour and the minute hand.
Example 1:
Input: hour = 12, minutes = 30
Output: 165
Example 2:
Input: hour = 3, minutes = 30
Output: 75
Example 3:
Input: hour = 3, minutes = 15
Output: 7.5
Example 4:
Input: hour = 4, minutes = 50
Output: 155Example 5:
Input: hour = 12, minutes = 0
Output: 0Constraints:
1 <= hour <= 12
0 <= minutes <= 59
Answers within 10^-5 of the actual value will be accepted as correct.Hints:
The tricky part is determining how the minute hand affects the position of the hour hand.
Calculate the angles separately then find the difference.
Algorithm to Compute the Angle of the Hour and Minute Hand on the Clock
We can compute the angle between the Hour to the North (clock-wise) in degrees. And the angle between Minute and the North (clock-wise) can be computed in the same way. The answer is minimum of the absolute difference between these two values.
One minute is 6 degrees (there are 60 minutes on the clock). When minute moves, the hour moves proportional. One hour is 30 degrees (there are 12 hours on the clock).
1 2 3 4 5 6 7 8 9 10 | class Solution { public: double angleClock(int hour, int minutes) { double hourAngle = ((hour % 12) + minutes * 1.0/60) * 30; double minutesAngle = minutes * 6; double a = abs(hourAngle - minutesAngle); double b = 360 - a; return a < b ? a : b; } }; |
class Solution {
public:
double angleClock(int hour, int minutes) {
double hourAngle = ((hour % 12) + minutes * 1.0/60) * 30;
double minutesAngle = minutes * 6;
double a = abs(hourAngle - minutesAngle);
double b = 360 - a;
return a < b ? a : b;
}
};The Python solution (slightly different) is here: Compute the Angle of the Hour and Minute Hand on a Clock
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:免插件为wordpress配置SMTP服务 如何解决wordpress密码设置链接失效的问题 为 wordpress 后台添加“全部设置”选项 如何自定义wordpress默认的图片附件链接方式 关于 wordpress 古腾堡编辑器易出现的两个错误信息 如何在wordpress首页侧边栏小工具中添加和使用短代码 wordpress 5.4 通过区块产出更多内容,又快又简单 如何让wordpress在全国哀悼日变成黑白/灰色调 通过自定义HTML小工具为wordpress添加倒计时模块 将一个正方形纸片剪去一个宽4cm的长条
- 评论列表
-
- 添加评论


