На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 14
ссылка на сообщение  Отправлено: 30.01.23 18:16. Заголовок: №26-5877 (Е. Джобс) (26-97) помогите найти ошибку


Подготовила исходные данные https://disk.yandex.ru/i/zehWd2clFdwbag
один - диаметры труб по убыванию(с убиранием лишнего) https://disk.yandex.ru/d/Sr3WvzezE__LAg
второй - минимальная толщина труб для этих диаметров https://disk.yandex.ru/d/nab8iOHjPrwWQg
Программа выдает 27 и 103. Начало списка проверила руками - сходилось
Что не так?
 
with open('26-97-D.txt.') as f:
D=[int(x) for x in f]# отдельно список без повторов с отсортированным по убыв диаметром
with open('26-97-r.txt') as g:
r=[int(x) for x in g]# отдельно список с минимальной толщиной стен для каждого диаметра

maxi=D[0]# берем самую широкую трубу
rez=[maxi]# закидываем ее в список результата (пакета)
i_max=0
#print('i im D r ma IF')# проследить результаты
for i in range(1,len(D)):
## print(i, i_max,' ',D,r[i_max],' ',maxi,((maxi-D-2*r[i_max])>=3))# тоже проследить результаты
## input()
if (maxi-D-2*r[i_max])>=3:# диаметр наибольш тубы минус диаметр следующей трубы минус две толщины наибольш
rez.append(D)# если следующий диаметр подходит, тоже кидаем в список
maxi=D# переприсваиваем звание самой большой трубы
i_max=i# запомнить толщину стен
print(len(rez), rez[-1])
print(rez)


Спасибо: 0 
ПрофильЦитата Ответить
Новых ответов нет


Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 493
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет