СДАМ ГИА






Каталог заданий. Буквенно-числовые строки
Пройти тестирование по этим заданиям
Вернуться к каталогу заданий
Версия для печати и копирования в MS Word
1
Задание 27 № 3101

 На ав­то­за­пра­воч­ных станциях (АЗС) про­да­ет­ся бензин с мар­ки­ров­кой 92, 95 и 98. В го­ро­де N был про­ве­ден мониторинг цены бен­зи­на на раз­лич­ных АЗС.

Напишите эф­фек­тив­ную по вре­ме­ни работы и по ис­поль­зу­е­мой памяти про­грам­му (укажите ис­поль­зу­е­мую версию языка программирования, например, Borland Pascal 7.0), ко­то­рая будет опре­де­лять для каж­до­го вида бензина, сколь­ко АЗС про­да­ют его де­шев­ле всего. На вход про­грам­ме в пер­вой строке по­да­ет­ся число дан­ных о сто­и­мо­сти бензина. В каж­дой из по­сле­ду­ю­щих N строк на­хо­дит­ся информация в сле­ду­ю­щем формате:

<Компания> <Улица> <Марка> <Цена>

где <Компания> – строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Улица> – строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Марка> – одно из чисел – 92, 95 или 98, <Цена> – целое число в диа­па­зо­не от 1000 до 3000, обо­зна­ча­ю­щее стоимость од­но­го литра бен­зи­на в копейках. <Компания> и <Улица>, <Улица> и <Марка>, а также <Марка> и <цена> раз­де­ле­ны ровно одним пробелом. При­мер входной строки:

Синойл Цве­точ­ная 95 2250

Программа долж­на выводить через про­бел 3 числа – ко­ли­че­ство АЗС, про­да­ю­щих дешевле всего 92-й, 95-й и 98-й бен­зин соответственно. Если бен­зин какой-то марки нигде не продавался, то сле­ду­ет вывести 0.

Пример вы­ход­ных данных:

12 1 0


2
Задание 27 № 3124

На ав­то­за­пра­воч­ных станциях (АЗС) про­да­ет­ся бензин с мар­ки­ров­кой 92, 95 и 98. В го­ро­де N был про­ве­ден мониторинг цены бен­зи­на на раз­лич­ных АЗС.

Напишите эф­фек­тив­ную по вре­ме­ни работы и по ис­поль­зу­е­мой памяти про­грам­му (укажите ис­поль­зу­е­мую версию языка программирования, например, Borland Pascal 7.0), ко­то­рая будет опре­де­лять для каж­до­го вида бензина, сколь­ко АЗС про­да­ют его де­шев­ле всего. На вход про­грам­ме в пер­вой строке по­да­ет­ся число дан­ных о сто­и­мо­сти бензина. В каж­дой из по­сле­ду­ю­щих N строк на­хо­дит­ся информация в сле­ду­ю­щем формате:

<Компания> <Улица> <Марка> <Цена> где <Компания> – строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Улица> – строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Марка> – одно из чисел – 92, 95 или 98, <Цена> – целое число в диа­па­зо­не от 1000 до 3000, обо­зна­ча­ю­щее стоимость од­но­го литра бен­зи­на в копейках. <Компания> и <Улица>, <Улица> и <Марка>, а также <Марка> и <цена> раз­де­ле­ны ровно одним пробелом. При­мер входной строки: Си­нойл Цветочная 95 2250 Про­грам­ма должна вы­во­дить через про­бел 3 числа — ко­ли­че­ство АЗС, про­да­ю­щих дешевле всего 92-й, 95-й и 98-й бен­зин соответственно. Если бен­зин какой-то марки нигде не продавался, то сле­ду­ет вывести 0.


3
Задание 27 № 3651

На ав­то­за­пра­воч­ных стан­ци­ях (АЗС) про­да­ет­ся бен­зин с мар­ки­ров­кой 92, 95 и 98. В го­ро­де N был про­ве­ден мо­ни­то­ринг цены бен­зи­на на раз­лич­ных АЗС.

Напишите эффективную, в том числе и по ис­поль­зу­е­мой памяти, про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, например, Borland Pascal 7.0), ко­то­рая будет опре­де­лять для бен­зи­на с мар­ки­ров­кой 92, на какой АЗС его про­да­ют по вто­рой по ми­ни­маль­но­сти цене (считается, что самой низ­кой цене по­тре­би­те­ли не доверяют), а если таких АЗС несколько, то вы­да­ет­ся толь­ко ко­ли­че­ство таких АЗС. Если все АЗС, у ко­то­рых 92-й бен­зин есть, про­да­ют его по одной и той же цене, то эта цена счи­та­ет­ся ис­ко­мой и вы­да­ет­ся либо число таких АЗС, когда их несколько, либо кон­крет­ная АЗС, если она одна. Гарантируется, что хотя бы одна АЗС 92-й бен­зин продает.

На вход про­грам­ме сна­ча­ла по­да­ет­ся число дан­ных о сто­и­мо­сти бен­зи­на N. В каж­дой из сле¬дующих N строк на­хо­дит­ся ин­фор­ма­ция в следующем формате:

 

<Компания> <Улица> <Марка> <Цена>

 

где <Компания> — строка, со­сто­я­щая не более чем из 20 сим­во­лов без пробелов,

<Улица> — строка, со­сто­я­щая не более чем из 20 сим­во­лов без пробелов,

<Марка> — одно из чисел — 92, 95 или 98,

<Цена> — целое число в диа­па­зо­не от 1000 до 3000, обо­зна­ча­ю­щее сто­и­мость од­но­го литра бен­зи­на в копейках.

<Компания> и <Улица>, <Улица> и <Марка>, а также <Марка> и <цена> раз­де­ле­ны ровно одним пробелом.

 

Пример вход­ной строки:

СуперБенз Цве­точ­ная 92 1950

Программа долж­на вы­во­дить через про­бел Ком­па­нию и Улицу ис­ко­мой АЗС или их количество, если ис­ко­мых ва­ри­ан­тов несколько.

Пример вы­ход­ных данных:

Бензинчик Перспективная

Второй ва­ри­ант вы­ход­ных данных:

4


4
Задание 27 № 3102

На вход про­грам­ме подается набор символов, за­кан­чи­ва­ю­щий­ся точкой (в про­грам­ме на языке Бей­сик символы можно вво­дить по од­но­му в строке, пока не будет вве­де­на точка, или счи­ты­вать данные из файла). На­пи­ши­те эффективную, в том числе и по ис­поль­зу­е­мой памяти, про­грам­му (укажите ис­поль­зу­е­мую версию языка программирования, например, Borland Pascal 7.0), ко­то­рая сначала будет определять, есть ли в этом на­бо­ре символы, со­от­вет­ству­ю­щие десятичным цифрам. Если такие сим­во­лы есть, то можно ли пе­ре­ста­вить их так, чтобы по­лу­чен­ное число было сим­мет­рич­ным (читалось оди­на­ко­во как слева направо, так и спра­ва налево). Ве­ду­щих нулей в числе быть не должно, ис­клю­че­ние – число 0, за­пись которого со­дер­жит ровно один ноль.

Если тре­бу­е­мое число со­ста­вить невозможно, то про­грам­ма должна вы­ве­сти на экран слово “NO”. А если возможно, то в пер­вой строке сле­ду­ет вывести слово “YES”, а во вто­рой – ис­ко­мое симметричное число. Если таких чисел несколько, то про­грам­ма должна вы­во­дить максимальное из них. Например, пусть на вход по­да­ют­ся следующие символы:

Do not 911 to 09 do.

В дан­ном случае про­грам­ма должна вывести

YES

91019

Пояснение · ·

5
Задание 27 № 3111

На вход про­грам­ме по­да­ет­ся набор символов, за­кан­чи­ва­ю­щий­ся точ­кой (в про­грам­ме на языке Бей­сик сим­во­лы можно вво­дить по од­но­му в строке, пока не будет вве­де­на точка, или счи­ты­вать дан­ные из файла). На­пи­ши­те эффективную, в том числе и по ис­поль­зу­е­мой памяти, про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, например, Borland Pascal 7.0), ко­то­рая сна­ча­ла будет определять, есть ли в этом на­бо­ре символы, со­от­вет­ству­ю­щие де­ся­тич­ным цифрам. Если такие сим­во­лы есть, то можно ли пе­ре­ста­вить их так, чтобы по­лу­чен­ное число было сим­мет­рич­ным (читалось оди­на­ко­во как слева направо, так и спра­ва налево). Ве­ду­щих нулей в числе быть не должно, ис­клю­че­ние – число 0, за­пись ко­то­ро­го со­дер­жит ровно один ноль.

Если тре­бу­е­мое число со­ста­вить невозможно, то про­грам­ма долж­на вы­ве­сти на экран слово «NO». А если возможно, то в пер­вой стро­ке сле­ду­ет вы­ве­сти слово «YES», а во вто­рой – ис­ко­мое сим­мет­рич­ное число. Если таких чисел несколько, то про­грам­ма долж­на вы­во­дить мак­си­маль­ное из них. Например, пусть на вход по­да­ют­ся сле­ду­ю­щие символы:

Do not 911 to 09 do.

В дан­ном слу­чае про­грам­ма долж­на вывести

YES

91019


6
Задание 27 № 3105

На вход про­грам­ме по­да­ет­ся по­сле­до­ва­тель­ность символов, среди ко­то­рых встре­ча­ют­ся и цифры. Ввод сим­во­лов за­кан­чи­ва­ет­ся точ­кой (в про­грам­ме на языке Бей­сик сим­во­лы можно вво­дить по од­но­му в строке, пока не будет вве­де­на точка). Тре­бу­ет­ся на­пи­сать как можно более эф­фек­тив­ную про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, например, Borland Pascal 7.0), ко­то­рая со­ста­вит из тех цифр, ко­то­рые встречаются во вход­ных данных, мак­си­маль­ное число. При со­став­ле­нии ито­го­во­го числа каж­дая цифра может быть ис­поль­зо­ва­на толь­ко один раз. Если во вход­ных дан­ных цифры не встречаются, то сле­ду­ет вы­ве­сти "-1". Например, пусть на вход по­да­ют­ся сле­ду­ю­щие символы:

14ф73п439.

В дан­ном слу­чае про­грам­ма долж­на вывести

97431.


7
Задание 27 № 3113

На вход про­грам­ме по­да­ет­ся по­сле­до­ва­тель­ность символов, среди ко­то­рых встре­ча­ют­ся и цифры. Ввод сим­во­лов за­кан­чи­ва­ет­ся точ­кой (в про­грам­ме на языке Бей­сик сим­во­лы можно вво­дить по од­но­му в строке, пока не будет вве­де­на точка). Тре­бу­ет­ся на­пи­сать как можно более эф­фек­тив­ную про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, например, Borland Pascal 7.0), ко­то­рая со­ста­вит из тех цифр, ко­то­рые встре­ча­ют­ся во вход­ных данных, мак­си­маль­ное число. При со­став­ле­нии ито­го­во­го числа каж­дая цифра может быть ис­поль­зо­ва­на толь­ко один раз. Если во вход­ных дан­ных цифры не встречаются, то сле­ду­ет вы­ве­сти "-1".

 

Например, пусть на вход по­да­ют­ся сле­ду­ю­щие символы:

14ф73п439

 

В дан­ном слу­чае про­грам­ма долж­на вывести

97431


8
Задание 27 № 3140

Завод по огран­ке дра­го­цен­ных кам­ней приобрёл сейф по­вы­шен­ной надёжности. Для опре­де­ле­ния дра­го­цен­ных камней, ко­то­рые не­об­хо­ди­мо по­ло­жить в сейф, сна­ча­ла от­би­ра­ют­ся 5% самых до­ро­гих камней.

Если у са­мо­го дешёвого камня из во­шед­ших в груп­пу 5% самых доро­гих ока­зы­ва­ет­ся це­но­вая ка­те­го­рия такая же, как и у не­сколь­ких других, то эти камни тоже вклю­ча­ют­ся в груп­пу кам­ней для раз­ме­ще­ния в сей­фе по­вы­шен­ной надёжности в том случае, если их це­но­вая ка­те­го­рия не менее 15.

Напишите эф­фек­тив­ную по вре­ме­ни ра­бо­ты и по ис­поль­зу­е­мой па­мя­ти про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, на­пример, Borland Pascal 7.0), ко­то­рая по ре­зуль­та­там вход­ных дан­ных будет определять, какую ми­ни­маль­ную цену дол­жен иметь дра­го­цен­ный камень, чтобы его по­ме­сти­ли в сейф по­вы­шен­ной надёжности.

На вход про­грам­ме сна­ча­ла подаётся общее ко­ли­че­ство кам­ней на скла­де N. В каж­дой из сле­ду­ю­щих N строк на­хо­дит­ся ин­фор­ма­ция по каж­до­му камню от­дель­но в сле­ду­ю­щем формате:

< На­зва­ние дра­го­цен­но­го камня > < Код > < Це­но­вая ка­те­го­рия >, где < На­звание дра­го­цен­но­го камня > — строка, со­сто­я­щая не более чем из 20 сим­волов, <Код> — строка, со­сто­я­щая не более чем из 15 символов, < Цено­вая ка­те­го­рия > — целое число от 1 до 20.

< На­зва­ние дра­го­цен­но­го камня >, < Код > и < Це­но­вая ка­те­го­рия > раз­делены одним пробелом. При­мер вход­ной строки: Рубин Р 123413.

Программа долж­на вы­во­дить ми­ни­маль­ную Це­но­вую ка­те­го­рию дра­гоценного камня, ко­то­рый не­об­хо­ди­мо по­ло­жить в сейф по­вы­шен­ной на­дёжности.


9
Задание 27 № 3149

На вход про­грам­ме подаётся 31 строка. Стро­ки со­дер­жат информа­цию о днев­ных и ноч­ных тем­пе­ра­ту­рах де­каб­ря 2008 года. Фор­мат каж­дой из строк следующий: сна­ча­ла за­пи­са­на дата в виде dd (на за­пись но­ме­ра дня в чис­ло­вом фор­ма­те от­во­дит­ся стро­го два символа), затем через про­бел за­пи­са­ны зна­че­ния днев­ной и ноч­ной тем­пе­ра­тур — числа со зна­ком плюс или минус. Даты вво­дят­ся в по­ряд­ке возрастания. Тре­бу­ет­ся напи­сать программу, ко­то­рая будет вы­во­дить на экран ин­фор­ма­цию о пе­ри­о­дах не­пре­рыв­но­го по­вы­ше­ния сред­не­су­точ­ной температуры. Най­ден­ные зна­чения для каж­до­го из пе­ри­о­дов сле­ду­ет вы­во­дить в от­дель­ной стро­ке в ви­де: номер пер­во­го дня периода, номер по­след­не­го дня периода, зна­че­ние сред­не­су­точ­ной тем­пе­ра­ту­ры за период.


10
Задание 27 № 3632

Вам не­об­хо­ди­мо написать про­грам­му распознавания чисел, за­пи­сан­ных прописью. Сна­ча­ла на вход про­грам­ме подаётся обу­ча­ю­щий блок, со­сто­я­щий из 27 строк. Пер­вые 9 строк со­дер­жат слова "один", "два", ...., "десять", сле­ду­ю­щие 9 строк — слова "одиннадцать", "двенадцать", ... "девятнадцать", сле­ду­ю­щие 9 строк — слова "десять", "двадцать", ..., "девяносто". Все слова за­пи­са­ны меленькими рус­ски­ми буквами без лиш­них пробелов в на­ча­ле и в конце строки.

Затем на вход про­грам­ме подаётся зна­че­ние N — ко­ли­че­ство записей, ко­то­рые необходимо обработать. Сле­ду­ю­щие N строк со­дер­жат записанные сло­ва­ми числа. Каж­дое число за­пи­са­но по-русски, ма­лень­ки­ми буквами, без ошибок. Если число со­сто­ит из не­сколь­ких слов, между сло­ва­ми находится ровно один пробел, лиш­них пробелов в на­ча­ле и в конце строк нет.

Напишите эф­фек­тив­ную программу, ко­то­рая определит сумму тех вход­ных чисел, ко­то­рые находятся в ин­тер­ва­ле то 1 до 99.

Размер памяти, ко­то­рую использует Ваша программа, не дол­жен зависеть от длины ис­ход­но­го списка.

Перед тек­стом программы крат­ко опишите ис­поль­зу­е­мый Вами ал­го­ритм решения задачи.

 

Пример вход­ных данных (обучающий блок по­ка­зан в при­ме­ре с сокращениями):

один

два

...

девяноста

5

двадцать восемь

два миллиона

четырнадцать

сто два­дцать три

тысяча де­вять­сот восемьдесят четыре

Пример вы­ход­ных данных для приведённого выше при­ме­ра входных данных:

42


11
Задание 27 № 3639

На вход про­грам­ме подаются 365 строк, ко­то­рые содержат ин­фор­ма­цию о сред­не­су­точ­ной темпе-ратуре всех дней 2007 года. Фор­мат каждой из строк следующий: сна­ча­ла записана дата в виде dd.mm (на за­пись номера дня и но­ме­ра месяца в чис­ло­вом формате от­во­дит­ся строго два символа, день от ме­ся­ца отделен точкой), затем через про­бел (для Бей­си­ка — через запятую) за­пи­са­но значение тем­пе­ра­ту­ры — число со зна­ком плюс или минус, с точ­но­стью до 1 цифры после де­ся­тич­ной точки. Дан­ная информация от­сор­ти­ро­ва­на по зна­че­нию температуры, т. е. хро­но­ло­ги­че­ский порядок нарушен. Тре­бу­ет­ся написать эф­фек­тив­ную программу на языке Пас­каль или Бейсик, ко­то­рая будет вы­во­дить на экран ин­фор­ма­цию о ме­ся­цах с мак­си­маль­ной среднеме¬сячной температурой. Най­ден­ные максимальные зна­че­ния следует вы­во­дить в от­дель­ной строке для каж­до­го месяца в виде: номер месяца, зна­че­ние среднемесячной температуры, округ­лен­ное до одной цифры после де­ся­тич­ной точки.


12
Задание 27 № 3794

На вход про­грам­ме по­да­ют­ся 366 строк, ко­то­рые со­дер­жат ин­фор­ма­цию о сред­не­су­точ­ной тем­пе­ра­ту­ре всех дней 2004 года. Фор­мат каж­дой из строк следующий: сна­ча­ла за­пи­са­на дата в виде dd.mm (на за­пись но­ме­ра дня и но­ме­ра ме­ся­ца в чис­ло­вом фор­ма­те от­во­дит­ся стро­го два символа, день от ме­ся­ца от­де­лен точкой), затем через про­бел за­пи­са­но зна­че­ние тем­пе­ра­ту­ры — число со зна­ком плюс или минус, с точ­но­стью до 1 цифры после де­ся­тич­ной точки. Дан­ная ин­фор­ма­ция от­сор­ти­ро­ва­на по зна­че­нию температуры, то есть хро­но­ло­ги­че­ский по­ря­док нарушен. На­пи­ши­те эффективную, в том числе и по ис­поль­зу­е­мой памяти, про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, на­при­мер Borland Pascal 7.0), ко­то­рая будет вы­во­дить на экран ин­фор­ма­цию о ме­ся­це (месяцах) сред­не­ме­сяч­ная тем­пе­ра­ту­ра для ко­то­ро­го (которых) на­и­ме­нее от­кло­ня­ет­ся от среднегодовой. В пер­вой стро­ке вы­ве­сти сред­не­го­до­вую температуру. Най­ден­ные зна­че­ния дтя каж­до­го из ме­ся­цев сле­ду­ет вы­во­дить в от­дель­ной стро­ке в сле­ду­ю­щем виде: номер месяца, зна­че­ние сред­не­ме­сяч­ной температуры, от­кло­не­ние от сред­не­го­до­вой температуры.


13
Задание 27 № 4571

На вход программе подаются сведения о пассажирах, желающих сдать свой багаж в камеру хранения на заранее известное время до полуночи. В первой строке сообщается число пассажиров N, которое не меньше 3, но не превосходит 1000; во второй строке – количество ячеек в камере хранения М, которое не меньше 10, но не превосходит 1000. Каждая из следующих N строк имеет следующий формат:

<Фамилия> <время сдачи багажа> <время освобождения ячейки>, где <Фамилия> – строка, состоящая не более чем из 20 непробельных символов; <время сдачи багажа> – через двоеточие два целых числа, соответствующие часам (от 00 до 23 – ровно 2 символа) и минутам (от 00 до 59 – ровно 2 символа); <время освобождения ячейки> имеет тот же формат.

<Фамилия> и <время сдачи багажа>, а также <время сдачи багажа> и <время освобождения ячейки> разделены одним пробелом. Время освобождения больше времени сдачи.

Сведения отсортированы в порядке времени сдачи багажа. Каждому из пассажиров в камере хранения выделяется свободная ячейка с минимальным номером. Если в момент сдачи багажа свободных ячеек нет, то пассажир уходит, не дожидаясь освобождения одной из них. Требуется написать программу (укажите используемую версию языка программирования, например Borland Pascal 7.0), которая будет выводить на экран для каждого пассажира номер ему предоставленной ячейки (можно сразу после ввода данных очередного пассажира). Если ячейка пассажиру не предоставлена, то его фамилия не печатается.

 

Пример входных данных:

3

10

Иванов 09:45 12:00

Петров 10:00 11:00

Сидоров 12:00 13:12

 

Результат работы программы на этих входных данных:

Иванов 1

Петров 2

Сидоров 1

Источник: Демонстрационная версия ЕГЭ—2013 по информатике.

14
Задание 27 № 4603

На вход программе подаются сведения о пассажирах, желающих сдать свой багаж в камеру хранения на заранее известное время до полуночи. В первой строке сообщается число пассажиров N, которое не меньше 3, но не превосходит 1000; во второй строке – количество ячеек в камере хранения М, которое не меньше 10, но не превосходит 1000. Каждая из следующих N строк имеет следующий формат:

<Фамилия> <время сдачи багажа> <время освобождения ячейки>, где <Фамилия> – строка, состоящая не более чем из 20 непробельных символов; <время сдачи багажа> – через двоеточие два целых числа, соответствующие часам (от 00 до 23 – ровно 2 символа) и минутам (от 00 до 59 – ровно 2 символа); <время освобождения ячейки> имеет тот же формат.

<Фамилия> и <время сдачи багажа>, а также <время сдачи багажа> и <время освобождения ячейки> разделены одним пробелом. Время освобождения больше времени сдачи.

Сведения отсортированы в порядке времени сдачи багажа. Каждому из пассажиров в камере хранения выделяется свободная ячейка с минимальным номером. Если в момент сдачи багажа свободных ячеек нет, то пассажир уходит, не дожидаясь освобождения одной из них. Требуется написать программу (укажите используемую версию языка программирования, например Borland Pascal 7.0), которая будет выводить на экран для каждого пассажира номер ему предоставленной ячейки (можно сразу после ввода данных очередного пассажира). Если ячейка пассажиру не предоставлена, то его фамилия не печатается.

 

Пример входных данных:

3

10

Иванов 09:45 12:00

Петров 10:00 11:00

Сидоров 12:00 13:12

 

Результат работы программы на этих входных данных:

Иванов 1

Петров 2

Сидоров 1


15
Задание 27 № 6472

В еже­не­дель­ном вы­пус­ке по­пу­ляр­ной га­зе­ты было объ­яв­ле­но го­ло­со­ва­ние по вы­бо­ру актёра, который, по мне­нию читателей, дол­жен снять­ся в про­дол­же­нии филь­ма «Белое солн­це пустыни». На выбор был пред­ло­жен спи­сок из шести актеров. Вам пред­ла­га­ет­ся на­пи­сать эффективную, в том числе по ис­поль­зу­е­мой памяти, программу, ко­то­рая будет об­ра­ба­ты­вать ре­зуль­та­ты sms-голосования по дан­но­му вопросу. Ре­зуль­та­ты го­ло­со­ва­ния по­лу­че­ны в виде спис­ка актёров (каждый эле­мент спис­ка со­от­вет­ству­ет од­но­му sms-сообщению). Сле­ду­ет учитывать, что ко­ли­че­ство го­ло­сов в спис­ке может быть очень велико. Перед тек­стом про­грам­мы крат­ко опи­ши­те ис­поль­зу­е­мый Вами ал­го­ритм ре­ше­ния задачи. На вход про­грам­ме в пер­вой стро­ке подаётся ко­ли­че­ство при­шед­ших sms-сообщений N. В каж­дой из по­сле­ду­ю­щих N строк за­пи­са­ны фа­ми­лия и имя ак­те­ра (сначала фамилия, а потом через про­бел имя). Длина стро­ки не пре­вос­хо­дит 50 символов. Пример вход­ных данных:

 

5

Меньшиков Олег

Миронов Ев­ге­ний

Меньшиков Олег

Машков Вла­ди­мир

Меньшиков Олег

 

Программа долж­на вы­ве­сти спи­сок всех актёров, встре­ча­ю­щих­ся в списке, в по­ряд­ке убы­ва­ния (невозрастания) ко­ли­че­ства голосов, от­дан­ных за того или иного актёра, с ука­за­ни­ем ко­ли­че­ства от­дан­ных за него голосов. При этом каж­дый актёр дол­жен быть вы­ве­ден ровно один раз вне за­ви­си­мо­сти от того, сколь­ко го­ло­сов было от­да­но за него.Пример вы­ход­ных дан­ных для приведённого выше при­ме­ра вход­ных данных:

 

Меньшиков Олег 3

Миронов Ев­ге­ний 1

Машков Вла­ди­мир 1

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 603.

16
Задание 27 № 6514

В ко­манд­ных олим­пи­а­дах по про­грам­ми­ро­ва­нию для ре­ше­ния пред­ла­га­ет­ся не боль­ше 12 задач. Ко­ман­да может ре­шать пред­ло­жен­ные за­да­чи в любом порядке. Под­го­тов­лен­ные ре­ше­ния ко­ман­да по­сы­ла­ет в еди­ную про­ве­ря­ю­щую си­сте­му соревнований. Вам пред­ла­га­ет­ся на­пи­сать эффективную, в том числе по ис­поль­зу­е­мой памяти, программу, ко­то­рая будет ста­ти­сти­че­ски об­ра­ба­ты­вать при­шед­шие запросы, чтобы опре­де­лить на­и­ме­нее по­пу­ляр­ные задачи. Сле­ду­ет учитывать, что ко­ли­че­ство за­про­сов в спис­ке может быть очень велико, так как мно­гие со­рев­но­ва­ния про­хо­дят с ис­поль­зо­ва­ни­ем сети Интернет. Перед тек­стом про­грам­мы крат­ко опи­ши­те ис­поль­зу­е­мый Вами ал­го­ритм ре­ше­ния задачи. На вход про­грам­ме в пер­вой стро­ке подаётся ко­ли­че­ство при­шед­ших за­про­сов N. В каж­дой из по­сле­ду­ю­щих N строк за­пи­са­но на­зва­ние за­да­чи в виде тек­сто­вой строки. Длина стро­ки не пре­вос­хо­дит 100 символов, на­зва­ние может со­дер­жать буквы, цифры, про­бе­лы и знаки препинания. Пример вход­ных данных:

 

6

А+B

Крестики-Нолики

А+В

Простой делитель

А+В

Простой делитель

 

Программа долж­на вы­ве­сти спи­сок из трёх задач, встре­ча­ю­щих­ся в за­про­сах наи­мень­шее число раз, с ука­за­ни­ем ко­ли­че­ства за­про­сов по ним. Если в за­про­сах упо­ми­на­ет­ся менее трёх задач, то вы­ве­ди­те ин­фор­ма­цию об име­ю­щих­ся задачах. Если не­сколь­ко задач имеют ту же ча­сто­ту встречаемости, что и тре­тья по ча­сто­те встре­ча­е­мо­сти задача, то вы­ве­ди­те толь­ко одну из них. Пример вы­ход­ных дан­ных для приведённого выше при­ме­ра вход­ных данных:

 

Крестики-Нолики 1

Простой де­ли­тель 2

А+В 3

Источник: ЕГЭ по информатике 08.07.2013. Вторая волна. Ва­ри­ант 801.

17
Задание 27 № 7420

На вход про­грам­ме по­да­ют­ся све­де­ния о посетителях, же­ла­ю­щих по­пасть в по­пу­ляр­ное кафе. В пер­вой стро­ке со­об­ща­ет­ся число же­ла­ю­щих N, ко­то­рое не мень­ше 10, но не пре­вос­хо­дит 1000, и ко­ли­че­ство столиков, ко­то­рое не мень­ше 10, но не пре­вос­хо­дит 1000. Каж­дая из сле­ду­ю­щих N строк имеет сле­ду­ю­щий формат:

 

<Фамилия> <время прихода> < время ухода>,

 

где <Фамилия> — строка, со­сто­я­щая не более чем из 20 символов; <время прихода> — через двое­то­чие два целых числа, со­от­вет­ству­ю­щие часам (от 00 до 23 — ровно 2 символа) и ми­ну­там (от 00 до 59 — ровно 2 символа); <время ухода> имеет тот же формат. <Фамилия> и <время прихода>, а также <время прихода> и <время ухода> раз­де­ле­ны одним пробелом.

Сведения от­сор­ти­ро­ва­ны в по­ряд­ке вре­ме­ни прихода. Каж­до­му сле­ду­ю­ще­му по­се­ти­те­лю вы­де­ля­ет­ся сво­бод­ный сто­лик с ми­ни­маль­ным номером. Если в мо­мент при­хо­да сво­бод­ных сто­ли­ков нет, то по­се­ти­тель уходит, не до­жи­да­ясь осво­бож­де­ния од­но­го из них.

Требуется на­пи­сать эф­фек­тив­ную программу, ко­то­рая будет вы­во­дить на экран для каж­до­го по­се­ти­те­ля номер столика, ко­то­рый ему будет предо­став­лен (можно сразу после ввода дан­ных оче­ред­но­го посетителя). Ука­жи­те ис­поль­зу­е­мую вер­сию языка программирования, на­при­мер Borland Pascal 7.0.

 

Пример вход­ных данных:

3 10

Иванов 09:45 12:00

Петров 10:00 11:00

Сидоров 12:00 13:12

 

Результат ра­бо­ты про­грам­мы на этих вход­ных данных:

Иванов 1

Петров 2

Сидоров 1

Источник: ЕГЭ по ин­фор­ма­ти­ке 08.05.2014. До­сроч­ная волна, ре­зерв­ный день. Ва­ри­ант 201.

18
Задание 27 № 7424

На вход про­грам­ме по­да­ют­ся све­де­ния о пассажирах, за­бро­ни­ро­вав­ших по Ин­тер­не­ту авиа­би­ле­ты (только тех, у кого время бро­ни­ро­ва­ния ещё не истекло). В пер­вой стро­ке за­да­но те­ку­щее время: через двое­то­чие два целых числа, со­от­вет­ству­ю­щие часам (от 00 до 23 — ровно 2 символа) и ми­ну­там (от 00 до 59 — ровно 2 символа). Во вто­рой стро­ке со­об­ща­ет­ся число пас­са­жи­ров N, ко­то­рое не мень­ше 3, но не пре­вос­хо­дит 1000. Каж­дая из сле­ду­ю­щих N строк имеет сле­ду­ю­щий формат:

 

<Фамилия> <время окон­ча­ния брони>,

 

где <Фамилия> — строка, со­сто­я­щая не более чем из 20 не­про­бель­ных символов; <время окон­ча­ния брони> — через двое­то­чие два целых числа, со­от­вет­ству­ю­щие часам (от 00 до 23 — ровно 2 символа) и ми­ну­там (от 00 до 59 — ровно 2 символа). <Фамилия> и <время окон­ча­ния брони> раз­де­ле­ны одним пробелом. Све­де­ния от­сор­ти­ро­ва­ны в по­ряд­ке времени, когда про­из­во­ди­лось бронирование. Все зна­че­ния вре­ме­ни от­но­сят­ся к те­ку­щим суткам.

Требуется написать эффективную программу (укажите используемую версию языка программирования, например Borland Pascal 7.0), которая в хронологическом порядке (т.е. в порядке возрастания значения времени окончания брони) выведет фамилии пассажиров, у которых в ближайшие 3 часа закончится бронь.

 

Пример вход­ных данных:

10:00

3

Иванов 13:00

Петров 10:00

Сидоров 13:12

 

Результат ра­бо­ты про­грам­мы на этих вход­ных данных:

Петров

Иванов

Источник: ЕГЭ по ин­фор­ма­ти­ке 08.05.2014. До­сроч­ная волна, ре­зерв­ный день. Ва­ри­ант 202.

19
Задание 27 № 7428

В цве­точ­ных лав­ках про­да­ют три вида роз (белые, крас­ные и желтые). В го­ро­де N была про­ве­де­на оцен­ка цены роз. На­пи­ши­те эф­фек­тив­ную по вре­ме­ни ра­бо­ты и по ис­поль­зу­е­мой па­мя­ти про­грам­му (укажите ис­поль­зу­е­мую вер­сию языка программирования, например, Borland Pascal 7.0), ко­то­рая будет опре­де­лять для каж­до­го вида роз, сколь­ко лавок про­да­ют их де­шев­ле всего.

На вход про­грам­ме в пер­вой стро­ке по­да­ет­ся число дан­ных N о сто­и­мо­сти роз. В каж­дой из по­сле­ду­ю­щих N строк на­хо­дит­ся ин­фор­ма­ция в сле­ду­ю­щем формате:

 

<Компания><Улица><Вид><Цена>

 

где <Компания> — строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Улица> — строка, со­сто­я­щая не более, чем из 20 сим­во­лов без пробелов, <Вид> — сим­вол Б, К или Ж, <Цена> — целое число в диа­па­зо­не от 100 до 500, обо­зна­ча­ю­щее сто­и­мость одной розы.

<Компания> и <Улица>, <Улица> и <Вид>, а также <Вид> и <Цена> раз­де­ле­ны ровно одним пробелом.

 

Пример вход­ной строки:

ТоргЦвет Са­до­вая Ж 225

 

Программа долж­на вы­во­дить через про­бел 3 числа – ко­ли­че­ство лавок, про­да­ю­щих де­шев­ле всего белые, крас­ные и жел­тые розы соответственно. Если роза какого-то вида нигде не продается, то сле­ду­ет вы­ве­сти 0.

 

Пример вы­ход­ных данных:

7 5 0

Источник: РЕШУ ЕГЭ — Пред­эк­за­ме­на­ци­он­ная ра­бо­та 2014 по информатике.

Пройти тестирование по этим заданиям



     О проекте · Редакция

© Гущин Д. Д., 2011—2017


СПб ГУТ! С! Ф! У!