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

Есть вопрос с C++

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



Входные данные:

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



Выходные данные:

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



Так, например, если программе на вход будут поданы следующие данные:

7

C 1200

A20000

B15000

C 1500

C25000

C18000

C 1000,

то она должна вывести число 4.
Голосование за лучший ответ
Татьяна Просветленный (36384) 5 месяцев назад
 #include  
#include
#include

struct Item {
char category;
int weight;
};

int main() {
int n;
std::cin >> n;

std::vector weights;

for (int i = 0; i < n; ++i) {
char category;
int weight;
std::cin >> category >> weight;

if (category == 'C') {
weights.push_back(weight);
}
}

std::sort(weights.begin(), weights.end());

int maxWeight = 30000;
int currentWeight = 0;
int count = 0;

for (int weight : weights) {
if (currentWeight + weight <= maxWeight) {
currentWeight += weight;
++count;
} else {
break;
}
}

std::cout << count << std::endl;

return 0;
}
Результат выполнения
в скрин не все данные попали попали а так они корректно все было введено
Нина ЯкимовичУченик (125) 5 месяцев назад
спасибо а можно еще число которое получается при этом коде
Татьяна Просветленный (36384) Нина Якимович,
Нина ЯкимовичУченик (125) 5 месяцев назад
спасибо помогли пройти тестирование!)
Похожие вопросы