難度簡單42
給定一個由 4 位數字組成的數組,返回可以設置的符合 24 小時制的最大時間。
最小的 24 小時制時間是 00:00,而最大的是 23:59。從 00:00 (午夜)開始算起,過得越久,時間越大。
以長度爲 5 的字符串返回答案。如果不能確定有效時間,則返回空字符串。
示例 1:
輸入:[1,2,3,4] 輸出:"23:41"
示例 2:
輸入:[5,5,5,5] 輸出:""
提示:
A.length == 4
0 <= A[i] <= 9
class Solution {
int Judge[4] = { 3,5,6,10 };
bool Flag[4] = { 0 };
public:
string largestTimeFromDigits(vector<int>& A) {
string result;
int Max_time = -1;
for (int i = 0; i < 4; ++i) {
for (int j = 0; j < 4; j++) {
if(i != j){
for (int k = 0; k < 4; ++k) {
if (k != i && k != j) {
int hour = A[i] * 10 + A[j];
int Min = A[k] * 10 + A[6 - i - j - k];
if (hour < 24 && Min < 60 && hour *100 +Min > Max_time) {
Max_time = hour * 100 + Min;
}
}
}
}
}
}
if(Max_time == -1)
return "";
result = to_string(Max_time);
while (result.length() < 4) {
result.insert(0, "0");
}
result.insert(2, ":");
cout << result << endl;
return result;
}
};