"""Leetcode 681. Next Closest Time (Premium)
Medium

URL: https://leetcode.com/problems/next-closest-time

Given a time represented in the format "HH:MM", form the next closest time by
reusing the current digits. There is no limit on how many times a digit can be
reused.

You may assume the given input string is always valid. For example, "01:34",
"12:09" are valid. "1:34", "12:9" are invalid.

Example 1:
Input: "19:34"
Output: "19:39"
Explanation:
The next closest time choosing from digits 1, 9, 3, 4, is 19:39, which occurs
5 minutes later.  
It is not 19:33, because this occurs 23 hours and 59 minutes later.

Example 2:
Input: "23:59"
Output: "22:22"
Explanation: It may be assumed that the returned time is next day's time since
it is smaller than the input time numerically.
"""

class Solution(object):
    def nextClosestTime(self, time):
        """
        @param time: the given time
        @return: the next closest time

        Time complexity: O(1).
        Space complexity: O(1).
        """
        hh, mm = time.split(':')
        minutes = int(hh) * 60 + int(mm)

        set_time = set(time)
        day_minutes = 60 * 24

        for new_minutes in range(minutes + 1, minutes + day_minutes + 1):
            # Take mode for 2nd day's minutes.
            new_minutes = new_minutes % day_minutes

            new_time = '{:02d}:{:02d}'.format(new_minutes // 60, new_minutes % 60)

            if set(new_time) <= set_time:
                # Found new time reusing the current digits.
                break

        return new_time


def main():
    # Output: "19:39"
    time = "19:34"
    print Solution().nextClosestTime(time)

    # Output: "22:22"
    time = "23:59"
    print Solution().nextClosestTime(time)


if __name__ == '__main__':
    main()

@@ -799,16 +799,39 @@
 Solution
+MinutesToFullDayMinutes
 (object)
@@ -832,16 +832,16 @@
 bject):%0A
-
     def 
@@ -1162,15 +1162,15 @@
 s = 
-60 * 24
+24 * 60
 %0A%0A  
@@ -1286,16 +1286,25 @@
  minutes
+ and time
 .%0A      
@@ -1649,32 +1649,55 @@
   print Solution
+MinutesToFullDayMinutes
 ().nextClosestTi
@@ -1747,16 +1747,16 @@
 %2223:59%22%0A
-
     prin
@@ -1765,16 +1765,39 @@
 Solution
+MinutesToFullDayMinutes
 ().nextC

Revise day_minutes & comments & class name