Найти - Пользователи
Полная версия: Решение задачи
Начало » Python для новичков » Решение задачи
1 2 3 4 5
sanya_rnd
n = int(input())
k = int(input())
data = []
while n>0:
    data.append(input().split(":"))
    n=n-1
print(data)

в общем пока работает цикл, в зависимости от n он будет добавлять лист в лист, т.е. data, а внутри подлисты, типа
[['Иванов','23','00','12','20'] ,...]

1
2
xxx 33:33
[['xxx 33', '33']]

Вот что за выходе имею (кинул в код, т.к. форум не отображает кавычки квадратные нормально)
sanya_rnd
n = int(input())
k = int(input())
data = []
# Вводим данные с клавиатуры, на выходе получаем массив с n подмассивами
for x in range(1,n+1):
    data.append(input().replace(":"," ").split(" "))
# Переводим часы:минуты в минуты => каждый подмассив сокращается на 2 элемента
for elem in data:
    elem.append(int(elem[1])*60+int(elem[2]))
    elem.append(int(elem[3])*60+int(elem[4]))
    
    while len(elem)>3:
        elem.pop(1)
        
    if elem[1]>elem[2]:
        raise SystemExit("Время выдачи не может быть меньше времени сдачи")
    
# Сортируем данные в массиве по времени сдачи
data = sorted(data, key=lambda elem: elem[1])
print(data)


Но никак не получается сделать вывод. Я давно это уже написал, но закончить никак не могу. Может есть какая-нибудь идея у кого? Правда ничего не выходит.
FishHook
sanya_rnd, смотрю на Ваш код и не понимаю, а зачем там вот эта строка?
k = int(input())

>>>Но никак не получается сделать вывод
Вывод в каком смысле, в философском или вывод на консоль? print(data) это не вывод?

sanya_rnd
FishHook
sanya_rnd, смотрю на Ваш код и не понимаю, а зачем там вот эта строка?
Условие задачи в первом сообщении.

Или тут:
http://infoegehelp.ru/index.php?option=com_content&view=article&id=464&Itemid=77
FishHook
sanya_rnd, по условию задачи должна быть переменная неиспользуемая в коде?
sanya_rnd
k - это кол-во свободных ячеек. В input примере они тоже есть.

во второй строке – количество ячеек в камере хранения K, которое не меньше 10, но не превосходит 1000.

print(data) в конце моего кода это просто проверка того, что я получил. Временно добавил. Я не могу сделать сортировку в соответствии с условием.
FishHook
Давай пример data и пример отсортированной data, придумаем как это сортировать
sanya_rnd
Требуется написать программу (укажите используемую версию языка программирования, например Borland Pascal 7.0), которая будет выводить на экран для каждого пассажира номер ему предоставленной ячейки (можно сразу после ввода данных очередного пассажира). Если ячейка пассажиру не предоставлена, то его фамилия не печатается.
Пример входных данных:
3
10
Иванов 09:45 12:00
Петров 10:00 11:00
Сидоров 12:00 13:12
Результат работы программы на этих входных данных:
Иванов 1
Петров 2
Сидоров 1

data = [["Имя N", "Время сдачи N", "Время выдачи N"], [......], ....]
- в общем каждый пассажир - это лист в общем листе. Потом я отсортировал, листы в листе упорядочились в порядке возрастания по времени сдачи.
FishHook
>>>Давай пример data и пример отсортированной data
Как бы мне все равно пассажиры это или матрешки.
У тебя есть список data, ты из него хочешь что-то получить. Ну так дай пример конкретный, типа такого

Есть список
[1,2,3,4,5,6,7]
, как из него получить список
["1/2","3/4","5/6"]
.
sanya_rnd
data = [[Иванов, 123, 224], [Сидоров, 235, 345], [Петров, 111, 222]]
Вывод:
Петров 1
Иванов 2
Сидоров 1
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB