Ai
1 Star 2 Fork 5

LilithSangreal/LeetCode-Solutions

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
next-closest-time.cpp 727 Bytes
一键复制 编辑 原始数据 按行查看 历史
kamyu 提交于 2017-09-24 17:12 +08:00 . Create next-closest-time.cpp
// 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);
}
};
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/LilithSangreal/LeetCode-Solutions.git
git@gitee.com:LilithSangreal/LeetCode-Solutions.git
LilithSangreal
LeetCode-Solutions
LeetCode-Solutions
master

搜索帮助