Предмет: Информатика, автор: brraindead1278

Выведите сумму индексов минимального числа последовательности . Python . Помогите , пж
Входные данные :
(строка)
35,43,30,18,5,50,15,20,37,30,5,10,18
Выходные данные :
14​


brraindead1278: У меня код почему-то 24 выдает
AlinaAlinaAliG: r = input().split(',')
r = list(map(int, r))
ind_min= 0
RMI = min(r)

for index, item in enumerate(r):
if item == RMI: ind_min+= index

print(ind_min)

Ответы

Автор ответа: KnowsUser1
2

Ответ:

если на входе имеем строку, то привести к листу её можно с помощью метода split(sep), где sep - символ, который программа считает за разделитель

input_list = input().split(',')

В нашей задаче нужно найти минимум, и сложить все индексы, под которыми этот минимум встречается. Для этого нужно привести последовательность к типу int. Можем воспользоваться либо функцией map, либо очень сильным питоньим колдунством (генераторы списков). Но всё таки воспользуемся пожалуй более традиционным способом:

input_list = list(map(int, input_list))

теперь все элементы нашего списка имеют тип int. Вытащим оттуда минимум:

our_min = min(input_list)

заведём переменную, куда будем складывать сумму индексов:

index_sum = 0

Самым очевидным для школьника способом сложить все индексы минимума будет перебрать весь массив и сравнивать элементы с нашим минимумом. Что бы не городить огороды, воспользуемся функцией enumerate, которая для нашего листа вернёт лист, состоящий из кортежей (индекс, элемент_под_этим_индексом)

for index, item in enumerate(input_list):

   if item == our_min: index_sum += index

что произошло? Всё просто - если выбранный элемент является минимумом, то мы увеличиваем нашу переменную index_sum на значение индекса очередного встреченного минимума. Осталось дело за малым - выведем сумму индексов на экран

print(index_sum)

P.S - Из выделенных курсивом строчек кода можно склеить программу) Но на всякий случай, ниже всё же приложен скриншот.

Приложения:

Nineofhokage99999999: KnowUser1, будьте добрый дайте ваш ВК чтобы связаться с вами по поводу задания.
KnowsUser1: Почему бы не спросить здесь?
Nineofhokage99999999: перейдите в мой профиль, и ответь на вопросы пожалуйста
Nineofhokage99999999: https://znanija.com/task/34375538?answeringSource=feedPersonal%2FquestionPage%2F4

https://znanija.com/task/34375567?answeringSource=feedPersonal%2FquestionPage%2F2

https://znanija.com/task/34375576?answeringSource=feedPersonal%2FquestionPage%2F1
Nineofhokage99999999: KnowUser1 вы поможете?
Похожие вопросы
Предмет: Русский язык, автор: Reginka555
Предмет: Математика, автор: kirillegorov01