Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.90/40: Рейтинг темы: голосов - 40, средняя оценка - 4.90
0 / 0 / 0
Регистрация: 11.03.2017
Сообщений: 2

Задача про этажи

15.02.2020, 09:37. Показов 8507. Ответов 1

Студворк — интернет-сервис помощи студентам
По примеру работает нормально, но дальше не проходит.

Лифт в N-этажном доме может перевозить одновременно не более L человек. Расстояние между этажами он проезжает за T секунд. Время на остановку на любом этаже с посадкой пассажира в лифт составляет P секунд. В начальный момент времени лифт без людей находится на последнем этаже (номер N). Одновременно K человек нажимают кнопки вызова на разных K этажах выше первого с целью уехать на 1-й этаж. Лифт едет вниз, останавливаясь на тех этажах, где была нажата кнопка вызова. При каждой остановке входит один человек. Если лифт заполнен, то дальше он едет без остановок. Требуется определить, через какой промежуток времени лифт доедет до первого этажа, а также номер самого высокого из этажей, на которых еще остались люди. Известно, что в течение всего времени новых вызовов или отмены вызовов не происходит.

Формат ввода
Вначале вводятся целые числа N, L, T, P, K (1≤ N ≤100, 4≤ L ≤12, 1≤ T ≤10, 1≤ P ≤10, 1≤ K ≤100), затем K чисел от N до 2 каждое – номера этажей, с которых был сделан вызов, в порядке убывания.

Формат вывода
Выведите два целых числа: в первой строке количество секунд, через которое лифт доедет на 1-й этаж, во второй строке – номер самого высокого из тех этажей, на которых еще остались люди или NO, если в лифт поместились все желающие.

Пример
Ввод
9 4 5 7 6
9 8 6 5 3 1
Вывод
68
3

Вот мой код:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
n, l, t, p, k = [int(i) for i in input().split()]
people = [int(i) for i in input().split()]
peopleinelevator = []
 
finalseconds = 0
laststop = n
onboard = 0
for i in people:
    if onboard == l:
        finalseconds += (laststop - 1) * t
        laststop = i
        break
    finalseconds += (laststop - i) * t + p
    onboard += 1
    laststop = i
    peopleinelevator.append(i)
 
j = set(people).difference(peopleinelevator)
print(finalseconds)
if j == set():
    print("NO")
else:
    print(max(j))
Помогите, пожалуйста
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.02.2020, 09:37
Ответы с готовыми решениями:

Задача про этажи и время. Очень надо, но не понятно(
Помогите пожалуйста написать код с++. Пользователь вводит номер этажа, а программа выводит время подъема человека. Сказано что на 1...

Програмка про (квартиры,этажи,подъезды)
Помогите пожалуйста выполнить такое задание, а если в строках будут пояснения, буду очень блогодарен! Создайте проект, в котором...

задача про самолет (аналог задачи про рюкзак)
Мне хотелось бы, чтобы вы посоветовали и помогли мне, как правильно решить задачу. В самолет требуется погрузить n видов предметов,...

1
Эксперт Python
1356 / 653 / 207
Регистрация: 23.03.2014
Сообщений: 3,057
15.02.2020, 22:13
не эта ли задача?
Python
1
2
3
4
5
6
7
8
9
10
11
12
f = int(input('введите номер квартиры '))  # кол-во квартир
v = int(input('введите кол-во подъездов '))  # кол-во подъездов
b = int(input('введите кол-во этажей '))  # кол-во этажей
n = int(input('введите кол-во квартир на этаже '))  # кол-во квартир на этаже
c = b * n  # кол-во квартир в подъезде
x = f // c
y = (x + 1)  # узнаём в каком подъезде квартира
z = f % c
d = z // n
s = (d + 1)  # узнаём на каком этаже
print(str(y) + ' подъезд')
print(str(s) + ' этаж')
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.02.2020, 22:13
Помогаю со студенческими работами здесь

Задача про взлом кода из книги Эрика Фримена про основы javascript в конце 5 главы.
читаю книгу Эрика Фримена про основы javascript.В конце 5 главы есть задачка про взлом кода.Никак не могу понять как ее решить.НЕ понимаю...

Задача про адреса и про данные в памяти
Добрый день, странный возможно вопрос, но мне он не дает покоя, как можно указать конкретное место в памяти, чтобы ссылка указывала точно...

Этажи в 2D
Возможно ли сделать этажи в 2D Unity ? Например есть трёхэтажный дом и по каждому этажу показанному на рисунке 1, 2 можно подниматься и...

Задача про Randomize и про проценты
Доброго времени суток. Возникла ещё одна задача, я думал что не сложная, как оказалось не знаю, как правильно решить. ...

Квартиры и этажи
Здравствуйте! не могу разобраться с реализацией задания. Само задание: Задание 1 Создайте публичный класс Flat квартиры жилого дома. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru