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

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

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

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





Сообщение: 50
ссылка на сообщение  Отправлено: 09.05.22 18:33. Заголовок: Задание 27 (задача 51)


Здравствуйте! В файле A сумма минимальных значений равна 60450, кол-во четных чисел равно 9, нечетных - 10. То есть, выполняется условие задачи - "чётность этой суммы НЕ совпадает с чётностью большинства выбранных чисел". Значит, первичная сумма минимальных значений является ответом, но в таблице ответ 62276. Это ошибка или я неправильно понимаю условие задачи?

 

a = open('27-51a.txt')
b = a.readlines()
c = []
for i in b:
c.append(list(map(int, i[:-1].split())))
c = c[1:]

e = [max(i) - min(i) for i in c]
e.sort()

diff_chet = [i for i in e if i%2 == 0]
diff_nechet = [i for i in e if i%2 != 0]

d = [min(i) for i in c]

num_chet, num_nechet = 0, 0
for i in d:
if i % 2 == 0:
num_chet += 1
else:
num_nechet += 1
print(sum(d))
print(num_chet,num_nechet)
print(sum(d)%2)




Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 4 [только новые]


Администратор




Сообщение: 3533
ссылка на сообщение  Отправлено: 12.05.22 20:08. Заголовок: dim18 пишет: В файле..


dim18 пишет:
 цитата:
В файле A сумма минимальных значений равна 60450

Эта сумма равна 61785. Вы неверно читаете последнюю пару чисел из-за удаления последнего символа строки. В конце последней строки нет "\n".

___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 52
ссылка на сообщение  Отправлено: 12.05.22 21:11. Заголовок: Спасибо! Исправил ал..


Спасибо! Исправил алгоритм создания начального списка, все ок. В большинстве случаев приведенный алгоритм дает правильный результат. Разница в формате исходного файла?

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Сообщение: 3536
ссылка на сообщение  Отправлено: 12.05.22 21:15. Заголовок: dim18 пишет: Разница..


dim18 пишет:
 цитата:
Разница в формате исходного файла?

Не обрезайте последний символ. Int сработает и так. Или обрезайте с помощью метода rstrip().

___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить





Сообщение: 54
ссылка на сообщение  Отправлено: 12.05.22 22:12. Заголовок: Спасибо! Я изменил н..


Спасибо! Я изменил на такой алгоритм создания списка списков.
 

a = open('27-48a.txt')
n = int(a.readline())
c = []
for i in range(n):
c.append(list(map(int, a.readline().split())))




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

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