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