LintCode 1871

最大时刻

题目描述
给一个24小时制的时间(00:00-23:59),其中有一个或多个数字是问号。问号处可以用任何一个数字代替,问可以表示的最大时间是多少。

扫码免费做题
↓↓↓

样例 1
输入: time = "2?:00"输出: "23:00"
样例 2
输入: time = "??:??"输出: "23:59"
解题思路
直接对于问号处的数字变成最大,要判断是否满足时间的标准。
复杂度分析
时间复杂度:O(1)
空间复杂度:O(1)
源代码
publicclassSolution{/** * @param time: a string of Time * @return: The MaximumMoment */public String MaximumMoment(String time){char[] timeChars = time.toCharArray();if (timeChars[0] == '?') {if (timeChars[1] <= '9' && timeChars[1] >= '4') timeChars[0] = '1';else timeChars[0]='2'; }if (timeChars[1] == '?') {if (timeChars[0] != '2') timeChars[1] = '9';else timeChars[1] = '3'; }if (timeChars[3] == '?') timeChars[3] = '5';if (timeChars[4] == '?') timeChars[4] = '9';return String.valueOf(timeChars); }}
查看完整代码,向左滑动
点击【阅读原文】,查看领扣原题
继续阅读
阅读原文