В цветочных лавках продают три вида роз (белые, красные и желтые). В
Условие
В цветочных лавках продают три вида роз (белые, красные и желтые). В городе N была проведена оценка цены роз. Напишите эффективную по времени работы и по используемой памяти программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет определять для каждого вида роз, сколько лавок продают их дешевле всего. На вход программе в первой строке подается число данных N о стоимости роз. В каждой из последующих N строк находится информация в следующем формате: <Компания><Улица><Вид><Цена> где <Компания> — строка, состоящая не более, чем из 20 символов без пробелов, <Улица> — строка, состоящая не более, чем из 20 символов без пробелов, <Вид> — символ Б, К или Ж, <Цена> — целое число в диапазоне от 100 до 500, обозначающее стоимость одной розы. <Компания> и <Улица>, <Улица> и <Вид>, а также <Вид> и <Цена> разделены ровно одним пробелом. Пример входной строки: ТоргЦвет Садовая Ж 225 Программа должна выводить через пробел 3 числа - количество лавок, продающих дешевле всего белые, красные и желтые розы соответственно. Если роза какого-то вида нигде не продается, то следует вывести 0. Пример выходных данных: 7 5 0 4 балла ставится за эффективную и правильно работающую программу, которая, возможно, содержит одну синтаксическую ошибку.3 балла ставится в случае, когда задача фактически решена, но программа содержит до трёх синтаксических ошибок, или если допущена одна содержательная ошибка, или если все входные данные сохраняются в массиве или иной структуре данных (программа неэффективна по памяти, но эффективна по времени работы).2 балла ставится, если программа неэффективна по времени работы (перебираются все возможные пары элементов), или в программе две содержательные ошибки, либо шесть-семь синтаксических ошибок.1 балл ставится, если программа написана неверно, но из описания алгоритма и общей структуры программы видно, что экзаменуемый в целом правильно представляет путь решения задачи.Далее уточняются перечисленные выше критерии.Критерии оценивания выполнения задания | Баллы | Программа работает верно и эффективно, т.е. корректно выделяет из входных данных время, запоминает фамилии только тех пассажиров, у которых бронь закончится в ближайшие 3 часа. Фамилии этих пассажиров верно сортируются согласно времени окончания, а затем печатаются. Допускается наличие в тексте программы одной синтаксической ошибки: пропущен или неверно указан знак пунктуации; неверно написано или пропущено зарезервированное слово языка программирования; не описана или неверно описана переменная; применяется операция, не допустимая для соответствующего типа данных. | 4 | Программа работает в целом верно, но содержит, по крайней мере, две из следующих нерациональностей: сохраняются фамилии и значения времени для всех пассажиров, сортируются все фамилии, а при печати анализируется, какие из них допустимые. Допускается наличие до трёх синтаксических ошибок, описанных выше. | 3 | Программа работает в целом верно, но не всегда верно определяет искомые значения времени или некорректно работает в случае отсутствия искомых времён. Возможно, в реализации алгоритма содержится одна-две ошибки (используется знак «<» вместо «>», «or» вместо «and» и т.п.). Возможно, некорректно организовано считывание входных данных. Допускается наличие до пяти синтаксических ошибок, описанных выше. | 2 | Программа неверно работает при некоторых входных данных и, возможно, содержит ошибку в сортировке, или времена сортируются верно, а соответствующие им фамилии нет. Допускается до четырёх различных ошибок в ходе решения задачи, в том числе описанных в критериях присвоения 2 баллов. Допускается наличие до семи синтаксических ошибок, описанных выше. | 1 | Не выполнены условия, позволяющие поставить 1, 2, 3 или 4 балла. | 0 | Максимальный балл | 4 |
Формат задания
Решение по шагам
Как рассуждать
Будем по очереди обрабатывать строчки.
Осталось ещё 7 шагов
Шаг 2
Шаг 3
Шаг 4
Шаг 5
Шаг 6
Шаг 7
Шаг 8
Бесплатно · займёт минуту