leetcode-539-Minimum Time Difference
leetcode-539-Minimum Time Difference
539. Minimum Time Difference
- Total Accepted: 3164
- Total Submissions: 7087
- Difficulty: Medium
- Contributors: fallcreek
Given a list of 24-hour clock time points in "Hour:Minutes" format, find the minimum minutes difference between any two time points in the list.
Example 1:
Input: ["23:59","00:00"] Output: 1
Note:
- The number of time points in the given list is at least 2 and won't exceed 20000.
- The input time is legal and ranges from 00:00 to 23:59.
Subscribe to see which companies asked this question.
题解:
简单的时钟问题; (1), 先对时间进行排序, (2),计算头尾即可
class Solution {
public:
int GetNum(string tp){
return (60*((tp[0]-'0')*10 + (tp[1]-'0')) + (tp[3]-'0')*10 + tp[4]-'0');
}
int findMinDifference(vector<string>& timePoints) {
int len = timePoints.size();
if(len <= 1){
return 0;
}
sort(timePoints.begin(), timePoints.end());
int tmp, ans = 24*60-GetNum(timePoints[len-1]) + GetNum(timePoints[0]);
for(int i=0; i<len-1; ++i){
tmp = GetNum(timePoints[i+1]) - GetNum(timePoints[i]);
if(tmp < ans){
ans = tmp;
}
}
return ans;
}
};

浙公网安备 33010602011771号