Leetcode [Medium] 1344 - Angle Between Hands of a Clock
LeetCode 1344
Angle Between Hands of a Clock
문제
Given two numbers, hour and minutes. Return the smaller angle (in degrees) 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: 155
Example 5:
Input: hour = 12, minutes = 0
Output: 0
Constraints:
1 <= hour <= 12
0 <= minutes <= 59
Answers within 10^-5 of the actual value will be accepted as correct.
나의 코드
/**
 * @param {number} hour
 * @param {number} minutes
 * @return {number}
 */
var angleClock = function (hour, minutes) {
  // 시침의 위치를 min 단위로 변환
  const hourToMin = (5 * hour + (5 * minutes) / 60) % 60;
  // 큰수 , 작은 수 구분
  const bigger = Math.max(hourToMin, minutes);
  const smaller = Math.min(hourToMin, minutes);
  // 각도 계산
  // '두 수의 차' 와  '60 (0) 과 두수의 각각의 차 합' 중 작은 수
  const angle1 = (bigger - smaller) * 6; // 1 분은 6 도임
  const angle2 = (60 - bigger + (smaller - 0)) * 6;
  return Math.min(angle1, angle2);
};
참고 코드
배운점
Subscribe via RSS