Chat:Ru/2020-12-27
MadKnight: чё вы делали в день xmas, который в рашке никто не отмечает?
TTeaLL: http://chat.codingame.com/pastebin/8680f310-0852-4e3a-96c4-70056d2e60c6
TTeaLL: допустим есть [7 . 3. 2. 1] список времени на задачи, и вот первый берётся за первую задачу на 7 минут, второй задачу за 3 минуты, второй справляется быстрее, делает задачу за 2 минуты после этого, и потом ещё и задачу на 1 минуту, то есть первый сделал одну задачу за 7 минут, второй 3 задачи по 3,2 и 1 минуте соответственно, но как сделать этот поток непрерывный
MadKnight: ответ-то какой нужен?
MadKnight: бери просто исполнителя с меньшей суммой времени и прибавляй время задачи к нему
MadKnight: ваще 1 строка
TTeaLL: ну надо максимально большое вре мя
TTeaLL: то есть, если 1 исполнитель делал 7 минут а другой 8 то надо ответить 8
TTeaLL: вот как найти эту сумму времени
MadKnight: яж говорю
MadKnight: перебирай все значения
TTeaLL: как поставить на поток работу
MadKnight: потом бери просто исполнителя с меньшей суммой времени и прибавляй время задачи к нему
TTeaLL: нужна какая то очередь
MadKnight: тебе дана очередь
MadKnight: перебирай массив чисел
MadKnight: массив времени задачи
MadKnight: бери просто исполнителя с меньшей суммой времени и прибавляй время задачи к нему
TTeaLL: ну вот [1, 2, 3] 2 исполнителя
MadKnight: 0, 0
MadKnight: 1, 0
MadKnight: 1, 2
MadKnight: 4, 2
TTeaLL: первый сделал за минуту и взял третье за 3 минуты и того ответ 4 минуты, пока второй делал за 2 минуты
TTeaLL: а как это реализовывается
MadKnight: бери просто исполнителя с меньшей суммой времени и прибавляй время задачи к нему
TTeaLL: через for или вот я хз
MadKnight: 4й раз скопипастил
MadKnight: кнш через фор
TTeaLL: ну типо, а вот как, я раньше только перебирал чезер 1 число, как сделать через 2
MadKnight: цикл в цикле надо будет
TTeaLL: for heroes in range(n)
MadKnight: тебе надо выбирать по новой
MadKnight: исполнителя с минимумом
MadKnight: внутри цикла
TTeaLL: а, ну вот тут уже чёт сложновато)
MadKnight: для этого есть min_by
MadKnight: или лучше пока учись ручками
MadKnight: не знаю
TTeaLL: я понимаю что ответ простой, но не понимаю как именно это реализуется
MadKnight: яж сказал
MadKnight: цикл в цикле
MadKnight: начни
MadKnight: сейчас
TTeaLL: ну то есть 2 фора есть
MadKnight: именно
MadKnight: один перебирает работы, другой - исполнителей
MadKnight: а на чём ты пишешь
MadKnight: точн
TTeaLL: так, не понял, что значит один работы второй исполнителей
MadKnight: то что перебирает цикл
MadKnight: а, тебе не нужны индексы
TTeaLL: я думал циклы это типо и есть исполнители
MadKnight: тогда забей, сделай массив [1, 2] и сортируй его
MadKnight: сортируй и прибавляй к первому исполнителю в массиве
MadKnight: будет
MadKnight: [0, 0] -> [1, 0] -> [0, 1] -> [2, 1] -> [1, 2] -> [4, 2]
MadKnight: -> [2, 4]
MadKnight: а на вывод бери последнего
TTeaLL: а если задано n исполниетлей
MadKnight: то в массиве будет n значений
MadKnight: уу
TTeaLL: тядковато даётся что-то новое
MadKnight: тогда пили пока через min_by
TTeaLL: ладно, я прочитаю про min_by
MadKnight: в питоне пишется не так
MadKnight: min_by - это то же что если ты отсортируешь и возьмёшь самый первый элемент
TTeaLL: ну там фишка в том, что порядок сохраняется
MadKnight: ага
TTeaLL: боже я кажется понял кое-что
MadKnight: лол
MadKnight: что понял?)
TTeaLL: типо, просто в цикле, значения добавлять в отдельный сипоск
TTeaLL: и в зависимости от старшинства добавлять в другой список исполнителей
TTeaLL: не знай как нормально объяснить\
MadKnight: я тебя не понял, но звучит будто ты делаешь что-то не так
TTeaLL: впервые с такой задачей столкнулся
MadKnight: а ты учишься где-то типа?
MadKnight: или всё сам?
TTeaLL: всё сам, но я давно учусь
TTeaLL: я не очень много внимания уделял задачкам, и вот сейчас их нагонять пытаюсь
MadKnight: хочешь тебе туториал дам?)
MadKnight: TTeaLL go v ЛС