Для того чтобы компы поддерживали актуальное время, они могут обращаться к серверам точного времени sntp. к сожалению комп не может просто получить время у сервера,потому что информация по сети передается не мгновенно; пока сообщение с текущим временем дойдет до компа,оно потеряет свою актуальность . протокол взаймодействия клиента выглядит 1)клиент отправляет запрос на сервер и запоминает вреия отправления a. 2)сервер получает запрос в момент времени b и отправляет клиенту сообщение содержащее время b 3)клиент получает ответ на свой запрос в момент вреиени c и запоминает его. теперь клиент, из предположения,что сетевые задержки при передаче сообщений от клиента серверу и от сервера клиенту одинаковы может определить и установить себе точное время используя известные значения a,b,c. ваи предстоит реализовать алогритм с точностью до скенунды определяющий точное время для установки на клиенте по известным a,b и c. при необходимости округлите резултат до целого числа секунд по правилам арифметики. возможно что пока клиент ожидал ответа по клиентскому времени успели наступить новые сутки однако известно,что между отправкой клиентом запроса и получением ответа от сервера менее 24 часов. прграииа получает на вход три времменные метки a,b,c по одной в каждой строке.все временные метки представлены в формате hh: mm: ss, где hh-это часы, mm-это минуты, ss-cеукнды.часы,минуты и секунды записываются ровно двуия цифрами каждоею программа должна вывести одну врмменную метку в формате,описаннои во входных данных-выичсленное точное время для установки на клиенте. в выводе не должно быть пробелов,пустых строк в начале вывода.
def timestamp_to_time(timestamp):
seconds = 0
for token in timestamp.split(":"):
seconds = seconds * 60 + int(token)
return seconds
def time_to_timestamp(time):
seconds = time % 60
time //= 60
minutes = time % 60
time //= 60
hours = time % 24
return "{:02d}:{:02d}:{:02d}".format(hours, minutes, seconds)
A = timestamp_to_time(input())
B = timestamp_to_time(input())
C = timestamp_to_time(input())
if C < A:
C += timestamp_to_time("24:00:00")
t = (C - A + 1) // 2
current_time = B + t
print(time_to_timestamp(current_time))
Пример ввода:
23:59:59
01:00:51
00:00:20
Пример вывода:
01:01:02