Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 19, 2021 21:39:26

calmmalakai
Зарегистрирован: 2021-10-19
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

У меня ничего не выходит. Помогите или подскажите пожалуйста
В n магазинах продают m разных товаров. В каждом магазине
продается каждый из m товаров по разным ценам. Напишите программу,
определяющую магазин, где можно купить все товары, заплатив наименьшую
сумму денег.

Отредактировано calmmalakai (Окт. 19, 2021 21:40:21)

Офлайн

#2 Окт. 19, 2021 21:53:42

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

я правильно понимаю что в набор товаров одинаковый и различаются только их цена
иначе теряет смысл это условие

calmmalakai
где можно купить все товары,
если да то
вам нужно sum по ценам каждого магазина и записать это в list ну и после сделать min



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Окт. 19, 2021 21:55:41)

Офлайн

#3 Окт. 19, 2021 23:19:57

calmmalakai
Зарегистрирован: 2021-10-19
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

У меня только так получается, вроде правильно, но вроде не по теме, да?

 shop1 = sum([1, 10, 20, 30, 40, 50, 60, 70, 80, 90])
shop2 = sum([1, 12, 24, 26, 40, 24, 60, 67, 80, 101])
print('Цены на товары во втором магазине', shop1)
print('Цены на товары в первом магазине', shop2)
if shop1 < shop2:
    print('Минимальные затраты будут в 1 магазине')
else:
    print('Минимальные затраты будут во 2 магазине')

Офлайн

#4 Окт. 20, 2021 09:17:04

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9878
Репутация: +  853  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

  
>>> shops = [
...     [1, 2, 3],
...     [4, 5, 6],
...     [3, 3, 3]
... ]
>>> 
>>> min_shop_sum = None
>>> for i, e in enumerate(shops, 1):
...     shop_sum = sum(e)
...     if min_shop_sum is None or shop_sum < min_shop_sum:
...         min_shop_sum = shop_sum
...         out = i, e, shop_sum
... 
>>> out
(1, [1, 2, 3], 6)
>>>



Офлайн

#5 Окт. 20, 2021 17:25:01

AD0DE412
Зарегистрирован: 2019-05-12
Сообщения: 1130
Репутация: +  44  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

calmmalakai
но вроде не по теме
да не вроде верно эээ в целом
мне это представлялось немного по другому

 shops = [[4, 5, 6], [1, 2, 3], [3, 3, 3]]
aim = [sum(i) for i in shops]
print (aim.index(min(aim)))



1. пжлст, форматируйте код, это в панели создания сообщений, выделите код и нажмите что то вроде
2. чтобы вставить изображение залейте его куда нибудь (например), нажмите и вставьте ссылку на его url

есчщо

Отредактировано AD0DE412 (Окт. 20, 2021 17:56:47)

Офлайн

#6 Окт. 20, 2021 20:50:21

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9878
Репутация: +  853  -
Профиль   Отправить e-mail  

Помогите решить задачу с многомерными массивами

AD0DE412
мне это представлялось немного по другому
  
shops = [[4, 5, 6], [1, 2, 3], [3, 3, 3]]
aim = [sum(i) for i in shops]
print (aim.index(min(aim)))
Хороший вариант без всяких “но”. Я когда свой вариант писал, думал о магазинах в JSON'ах, в словарях с именами, с другими критерями разбора цен. Поэтому у меня он громоздкий такой, но его есть куда поменять, если что-то случится с хранилищем магазинов или требованиями к вычислениям.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version