题目描述:
给你一个字符串 time ,格式为 hh:mm(小时:分钟),其中某几位数字被隐藏(用 ? 表示)。
有效的时间为 00:00 到 23:59 之间的所有时间,包括 00:00 和 23:59 。
替换 time 中隐藏的数字,返回你可以得到的最晚有效时间。
题源:https://leetcode-cn.com/problems/latest-time-by-replacing-hidden-digits/
代码:
class Solution { public: string maximumTime(string time) { // int l=time.length(); if(time[0]=='?') if (time[1]=='?' || time[1]<='3') time[0]='2'; //没有考虑到如果后面一位数字是>4的情况,第一位不能为2 else time[0]='1'; if(time[1]=='?') { if (time[0]<='1') time[1]='9'; else time[1]='3'; } if(time[3]=='?') time[3]='5'; if(time[4]=='?') time[4]='9'; return time; } };