代码拉取完成,页面将自动刷新
// Time: O(1)
// Space: O(1)
class Solution {
public:
string nextClosestTime(string time) {
static const vector<int> mins = { 600, 60, 10, 1 };
auto npos = time.find(':');
auto curr = stoi(time.substr(0, npos)) * 60 +
stoi(time.substr(npos + 1));
string result = "0000";
for (int i = 1, d = 0; i <= 1440 && d < 4; ++i) {
int m = (curr + i) % 1440;
for (d = 0; d < 4; ++d) {
result[d] = '0' + m / mins[d]; m %= mins[d];
if (time.find(result[d]) == string::npos) {
break;
}
}
}
return result.substr(0, 2) + ':' + result.substr(2, 2);
}
};
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。