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

Помогите пожалуйста решить задачу !

ника пар Ученик (71), на голосовании 5 месяцев назад
Компания, предоставляющая услуги такси, хочет премировать самого лучшего (заработавшего больше всех денег) таксиста за месяц. У нее есть данные о всех поездках: время поездки, класс поездки (эконом, комфорт, бизнес) и имя водителя такси. Напишите программу, которая по этим данным вычислит таксиста, который заработал больше всех денег за месяц. Известно, что 1 минута эконом-класса стоит 10 рублей, 1 минута комфорт-класса стоит 15 рублей, а 1 минута бизнес-класса стоит 30 рублей.



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

Вводится натуральное число n – количество совершенных поездок. Далее вводятся n строк со временем поездки, классом поездки и именем таксиста. В каждой из таких строк идет сначала время (натуральное число), потом пробел, потом класс поездки («E» - эконом, «K» - комфорт, «B» - бизнес), затем пробел и имя таксиста (строка из латинских букв).



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

Вывести строку – имя водителя такси, заработавшего наибольшее количество денег. Гарантируется, что такой таксист один.



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

4
10 K Igor
20 E Kirill
30 B Anna
40 E Anna,

то она должна вывести «Anna».
Голосование за лучший ответ
_Fire_of_Death_ Мыслитель (5471) 6 месяцев назад
 // Чтение входных данных 
$handle = fopen("php://stdin", "r");
$n = (int)fgets($handle);

// Тарифы за минуту для каждого класса поездки
$rates = [
'E' => 10,
'K' => 15,
'B' => 30
];

// Массив для хранения доходов таксистов
$drivers_earnings = [];

for ($i = 0; $i < $n; $i++) {
// Чтение строки с данными о поездке
$line = fgets($handle);
list($time, $class, $driver) = explode(" ", trim($line));

// Вычисление заработка за поездку
$earnings = $time * $rates[$class];

// Добавление заработка в общий доход таксиста
if (!isset($drivers_earnings[$driver])) {
$drivers_earnings[$driver] = 0;
}
$drivers_earnings[$driver] += $earnings;
}

// Нахождение таксиста с наибольшим доходом
$max_earning = 0;
$best_driver = "";

foreach ($drivers_earnings as $driver => $earnings) {
if ($earnings > $max_earning) {
$max_earning = $earnings;
$best_driver = $driver;
}
}

// Вывод имени таксиста с наибольшим доходом
echo $best_driver . "\n";
?>
Дмитрий ГлущенкоЗнаток (397) 6 месяцев назад
Во те братанчик заняться нечем) я бы за такую работу рубля 3 взял бы ?? так еще бы и благодарили бы . А ты тут бесплатно на ответах кодишь)

Напиши мне crm для управления файловым хостингом?)))00
Похожие вопросы