Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

ПОМОГИТЕ ПОЖЙЛУСТА СРОЧНО ПАЙТОН

мария Ученик (99), закрыт 5 месяцев назад
У фирмы на складе хранятся товары различных категорий. Существует список с данными о весе и категории товаров склада. Фирме необходимо перевезти максимальное количество (в штуках) товаров категории «А». При этом она может сделать одну перевозку общим весом в 20000 кг. Напишите программу, которая определит, сколько максимум товаров требуемой категории сможет перевезти фирма за один раз.


Входные данные:
Вводится натуральное число n – количество товаров на складе. Далее вводятся n строк с категорией и весом (в килограммах). В каждой из таких строк идет сначала категория (заглавная латинская буква), потом пробел, потом вес товара (натуральное число).


Выходные данные:
Вывести одно число – максимальное количество товаров (в штуках) категории «А», которые может перевезти фирма за один раз (общий вес товаров не должен превышать 20000 кг.).

Так, например, если программе на вход будут поданы следующие данные:
6
A 10000
B 5000
C 100
A 15000
A 8000
A 1000,
то она должна вывести число 3.
Лучший ответ
Национальный Социалист Мастер (1436) 5 месяцев назад
 n = int(input())  # количество товаров 
total_weight = 0
count_A = 0
for i in range(n):
category, weight = input().split()
weight = int(weight)
if category == "A":
total_weight += weight
count_A += 1
if total_weight > 20000:
break

print(count_A)
Максим ЖелтяковЗнаток (331) 5 месяцев назад
на JS сделаешь?
Остальные ответы
Dians Мастер (2017) 5 месяцев назад
 def max_goods_to_transport(n, data): 
a_goods = [int(goods[1]) for goods in data if goods[0] == 'A']
a_goods.sort(reverse=True)
total_weight = 0
max_goods_count = 0
for weight in a_goods:
if total_weight + weight <= 20000:
total_weight += weight
max_goods_count += 1
else:
break
return max_goods_count

n = int(input())
data = [input().split() for _ in range(n)]
result = max_goods_to_transport(n, data)
print(result)
Сделал ИИ ( Ссылка )
Андрей Иванов Ученик (133) 5 месяцев назад
n = int(input("Кол-во товаров"))
total_weight = 0
count_A = 0
all_A = []
for i in range(n):
category, weight = input().split()
weight = int(weight)
if category == "A":
all_A.append(weight)

all_A.sort()

for i in range(len(all_A)):
if all_A[i] + total_weight > 20000:
break
total_weight += all_A[i]
count_A += 1

print(count_A)
Похожие вопросы