w3resource

Python: Create a 24-hour time format (HH:MM ) taking 4 given digits

Python Itertools: Exercise-22 with Solution

Write a Python program to create a 24-hour time format (HH:MM) using the 4 given digits. Display the latest time and do not use any digit more than once.

From Wikipedia,
In the 24-hour time notation, the day begins at midnight, 00:00, and the last minute of the day begins at 23:59. Where convenient, the notation 24:00 may also be used to refer to midnight at the end of a given date - that is, 24:00 of one day is the same time as 00:00 of the following day.

Sample Solution:

Python Code:

import itertools
def max_time(nums):
    for i in range(len(nums)):
        nums[i] *= -1
    nums.sort()
    for hr1, hr2, m1, m2 in itertools.permutations(nums):
        hrs = -(10*hr1 + hr2)
        mins = -(10*m1 + m2)
        if 60> mins >=0 and 24 > hrs >=0:
            result = "{:02}:{:02}".format(hrs, mins)
            break
    return result

nums = [1,2,3,4]
print("Original array:",nums)
print("Latest time: ",max_time(nums))

nums = [1,2,4,5]
print("\nOriginal array:",nums)
print("Latest time: ",max_time(nums))

nums = [2,2,4,5]
print("\nOriginal array:",nums)
print("Latest time: ",max_time(nums))

nums = [2,2,4,3]
print("\nOriginal array:",nums)
print("Latest time: ",max_time(nums))

nums = [0,2,4,3]
print("\nOriginal array:",nums)
print("Latest time: ",max_time(nums))

Sample Output:

Original array: [1, 2, 3, 4]
Latest time:  23:41

Original array: [1, 2, 4, 5]
Latest time:  21:54

Original array: [2, 2, 4, 5]
Latest time:  22:54

Original array: [2, 2, 4, 3]
Latest time:  23:42

Original array: [0, 2, 4, 3]
Latest time:  23:40

Python Code Editor:


Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to find the years where 25th of December be a Sunday between 2000 and 2150.
Next: Write a Python program to find the shortest distance from a specified character in a given string. Return the shortest distances through a list and use itertools module to solve the problem.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.