На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.
Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.
Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».
я думаю, ответы к 26-125 неверные уже 2 программы составил, возможно, в условиях имели ввиду, что 2 минуты должно пройти после последней варки, но если поменять этот момент, то ответ ещё больше различаться будет
with open('26/data/26-125.txt') as f: D, P = map(int, f.readline().split()) data = [ list(map(int, x.split())) for x in f.readlines() ] data.sort(key=lambda x: (x[ 0 ], x[ 1 ])) # print(data, '\n', D, P)
T = 50_000 tline = [ [ 0 ]*P for _ in range(T) ] uses = [ False ]*P sums = 0 maxc = 0 SUT = 24*60
def fillempt(t, p): for i in range(t-1, 0-1, -1): if tline[ i ][ p ] == 0: tline[ i ][ p ] = 1 else: break
def filltime(t, p, m): global sums, maxc n = m // 2 nmax = 0 for i in range(t, t+n): tline[ i ][ p ] += 2 if i <= SUT: nmax += 1 sums += 1 if nmax > maxc: maxc = nmax
def findspace(t): while tline[ t ].count(0) == 0: t += 1 p = tline[ t ].index(0) if uses[ p ]: t+=2 return t, p
for i in range(D): t, m = data[ i ] if m >= 2: t, p = findspace(t) uses[ p ] = True print(t, p, m)
fillempt(t, p) filltime(t, p, m)
for i in range(1000): print(tline[ i ]) print(sums, maxc)
Все даты в формате GMT
3 час. Хитов сегодня: 2892
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет