【leetcode】1344. Angle Between Hands of a Clock
题目如下:
Given two numbers,
hour
andminutes
. Return the smaller angle (in sexagesimal units) formed between thehour
and theminute
hand.Example 1:
Input: hour = 12, minutes = 30 Output: 165Example 2:
Input: hour = 3, minutes = 30 Output: 75Example 3:
Input: hour = 3, minutes = 15 Output: 7.5Example 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.
解题思路:很有意思的题目,关键就是要判断时针的位置,时针偏离的角度和当前的分钟有关。
代码如下:
class Solution(object): def angleClock(self, hour, minutes): """ :type hour: int :type minutes: int :rtype: float """ if hour == 12: hour = 0 hour = hour * 5 hour += float(minutes) / float(60) * 5 res = abs(minutes - hour)/float(60) * 360 if res > 180: res = 360 - res return res