Top.Mail.Ru
Ответы

Решение задачи на python

Помогите выполнить задание на python:

Напиши программу на питоне с пояснениями к каждому действию для решения задачи:
Недавно вышел новый сезон любимого сериала Миши. Каждая серия длится ровно n
секунд. При этом перед началом каждой серии проигрывается одинаковое интро длиной m
секунд, которое очень надоело Мише.
Миша купил себе новую клавиатуру, на которой есть кнопка для перемотки видео. Одно нажатие на такую кнопку перематывает воспроизведение видео на k
секунд вперёд. Нажатие на кнопку и перемотка происходят мгновенно, а также Мише не нужно делать перерывов между нажатиями, поэтому он может мгновенно несколько раз нажать на кнопку перемотки.
К сожалению, не всегда удаётся перемотать интро так, чтобы не потерять ни секунды событий сериала. Миша решил, что если придётся пропустить не более чем t
секунд сериала, то он готов смириться с этим. Теперь Мише интересно, какое максимальное количество секунд сериала он посмотрит, если пропустит как можно больше интро, не пропустив при этом более t
секунд сериала.
Проще говоря, если у Миши получится перемотать интро целиком, потеряв при этом не более t
секунд сериала, то он поступит именно так. Иначе он пропустит столько секунд интро, сколько возможно.
Выведите одно целое число —
количество секунд сериала, которые посмотрит Миша

По дате
По Рейтингу
Аватар пользователя
Новичок
1234567891011121314
 n = int(input('Длина серии: ')) 
m = int(input('Длина рекламы: ')) 
k = int(input('Длина перемотки: ')) 
t = int(input('Допустимое время пропуска: '))

press_count = 0

while press_count*k < m: 
    press_count += 1
 
if press_count*k < m+t: 
    print(n - ((m+t) - press_count*k)) 
else: 
    print(n) 
Аватар пользователя
123456789101112131415161718192021222324
 # Вводим продолжительность серии, интро и возможную потерю времени 
n, m, k, t = map(int, input().split()) 
 
# Максимальное количество секунд интро, которое Миша может пропустить 
max_intro_skip = min(m, t) 
 
# Вычисляем, сколько секунд интро Миша пропустит 
intro_skip = max_intro_skip 
 
# Если остались ещё секунды, которые Миша может потерять 
if t > max_intro_skip: 
    # Вычисляем, сколько полных переключений (кнопок) Миша сделает 
    full_switches = (t - max_intro_skip) // k 
 
    # Вычисляем, сколько секунд сериала он просмотрит после полных переключений 
    remaining_seconds = min(n - m, full_switches * k) 
 
    # Суммируем секунды интро и секунды сериала, которые Миша просмотрит 
    intro_skip += remaining_seconds 
 
# Выводим результат 
print(intro_skip) 
 
 
Аватар пользователя
Ученик

читать долго не мороси делай