VOOZH about

URL: https://www.geeksforgeeks.org/dsa/maximize-time-by-replacing-_-in-a-given-24-hour-format-time/

⇱ Maximize time by replacing '_' in a given 24 Hour format time - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Maximize time by replacing '_' in a given 24 Hour format time

Last Updated : 23 Jul, 2025

Given a string S representing a time in 24 hours format, with '_' placed at positions of some digits, the task is to find the maximum time possible by replacing the characters '_' with any digit.

Examples:

Input: S = “0_:4_”
Output: 09:39
Explanation: Replacing the characters S[1] and S[4] with '9' modifies the string to "09:49", which is the maximum time possible.

Input: S = “__:__”
Output: 23:59

Approach: The given problem can be solved by greedily selecting the digits for each '_' present in the string. Follow the steps below to solve the problem: 

  • If the character S[0] is equal to '_' and S[1] is either '_' or is less than 4, then assign '2' to S[0]. Otherwise, assign '1' to S[0].
  • If the character S[1] is equal to '_' and S[0] is '2', then assign '3' to S[1]. Otherwise, assign '9' to S[1].
  • If the character S[3] is equal to '_', then assign '5' to S[3].
  • If the character S[4] is equal to '_', then assign '9' to S[4].
  • After completing the above steps, print the modified string S.

Below is the implementation of the above approach:


Output
09:49

Time Complexity: O(1)
Auxiliary Space: O(1)


 

Comment