网站建设用什么系统,图片编辑软件手机版,加强网站建设 实施政务公开,做盗链网站给你一个字符串 time #xff0c;格式为 hh:mm#xff08;小时#xff1a;分钟#xff09;#xff0c;其中某几位数字被隐藏#xff08;用 ? 表示#xff09;。
有效的时间为 00:00 到 23:59 之间的所有时间#xff0c;包括 00:00 和 23:59 。
替换 time 中隐藏的数…给你一个字符串 time 格式为 hh:mm小时分钟其中某几位数字被隐藏用 ? 表示。
有效的时间为 00:00 到 23:59 之间的所有时间包括 00:00 和 23:59 。
替换 time 中隐藏的数字返回你可以得到的最晚有效时间。
示例 1
输入time “2?:?0” 输出“23:50” 解释以数字 ‘2’ 开头的最晚一小时是 23 以 ‘0’ 结尾的最晚一分钟是 50 。 示例 2
输入time “0?:3?” 输出“09:39” 示例 3
输入time “1?:22” 输出“19:22”
提示
time 的格式为 hh:mm题目数据保证你可以由输入的字符串生成有效的时间 解题思路
第1位最大值是2但是如果后面第2位大于3的话这位只能取1第二位最大值是9但是如果第一位大于1的话只能取3第三位最大值是5第四位最大值是9
代码
class Solution {public String maximumTime(String time) {StringBuilder sb new StringBuilder();if (time.charAt(0)?){if (time.charAt(1)?||time.charAt(1)3)sb.append(2);else sb.append(1);}else sb.append(time.charAt(0));if (time.charAt(1)?){sb.append(sb.charAt(sb.length()-1)2?3:9);}else sb.append(time.charAt(1));sb.append(:);sb.append(time.charAt(3)??5:time.charAt(3));sb.append(time.charAt(4)??9:time.charAt(4));return sb.toString();}
}