Основы программирования на Python 3

Реализуйте задания в сответствии с инструкциями в данной презентации

Олипиада по информатике и информационным технологиям 2023

Выполните практическое задание по инструкции на следующих слайдах.

Загрузку архива (ZIP, WinRAR) с решением и/или ссылку на архив осуществляем только через гугл форму в конце данной презентации или по кнопке на сайте.

Отчет по работе можно выполнять следующим образом:

В архиве файлы: текстовый документ отчет и файлы с решениями в формате .py отправленном через гугл форму в конце данной презентации

В своей архиве на гугл диске, указав ссылку на папку в итоговой гугл форме.

Архив необходимо подписать Ф.И.О._Вуз(сокращенно)

1. Подарок

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

Входной файл INPUT.TXT содержит три различных натуральных числа a, b, c — стоимости подарков (a, b, c ≤ 1 000).

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

В выходной файл OUTPUT.TXT среднее из заданных чисел.

Маша решила подарить своему другу подарок на Новый Год. У неё есть выбор из трёх вариантов. Самый дорогой она дарить не хочет, т.к. думает что друг посчитает её расточительной. Самый дешёвый она дарить тоже не хочет, т.к. боится что друг посчитает её жадной. Поэтому она решила выбрать подарок, средний по цене.

1. Подарок (продолжение)

Примеры

         INPUT.TXT

        OUTPUT.TXT

1       

           2     6    7

             6

2

         11    56   2

            11

2. Подарки

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

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

Входной файл INPUT.TXT содержит на первой строке натуральное число n — количество подарков (n ≤ 1 000). На второй строке записано n натуральных чисел — диаметры подарков в виде шаров. На следующих n строках задаются размеры коробок.

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

В выходной файл OUTPUT.TXT выведите максимальное количество подарков, которые можно уложить в коробки.

2. Подарки (продолжение)

Примеры

INPUT.TXT

OUTPUT.TXT

1

2

10 20

40 30 30

20 15 10

1

2

3

30 20 10

40 40 40

30 30 30

20 20 20

3

Примечание. В первом случае можно поместить в коробку только 1 подарок. В коробку 20х15х10 не поместится ни один из подарков.

3. Юный хакер

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

Юный хакер Антон получил доступ к этому файлу и решил записать свой ник столько же раз, сколько в нём уже было записей, а затем перемешать все строки в файле чтобы его действие стало труднее заметить. В результате проведённой операции ник Антона встречается чаще, чем все другие имена вместе взятые. Один раз его имя уже было записано когда он регистрировался в игре.

Матвей, занимающийся подсчётом результатов, узнал о проделке Антона и хочет вычислить ник Антона, но он не так хорошо знаком с компьютером. Помогите Матвею определить наиболее часто встречающееся имя.

3. Юный хакер (продолжение)

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

В строках входного файла INPUT.TXT записано множество имён участников, каждое на отдельной строке. Количество имён может быть большим, но не превосходит 300 000. Имя представляет собой строку, состоящую не более чем из 30 латинских символов, пробелов и цифр

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

В единственную строку выходного файла OUTPUT.TXT нужно вывести имя, которое встречается максимальное число раз.

3. Юный хакер (продолжение)

Примеры

INPUT.TXT

OUTPUT.TXT

1

Green Monkey

Green Monkey

First

Green Monkey

Green Monkey

2

Second 23

First

Second 23

Second 23

Third

Second 23

Second 23

4. МаксиШифр

Для передачи сообщений между командами используются латинские буквы, которые могут располагаться в произвольном порядке. В одной из команд спрятался агент, который кодирует в сообщении свои данные. Агент располагает в сообщении последовательности «XYZ» и «ZYX» рядом.

Требуется написать программу, которая найдёт максимальное число подряд идущих символов, образующих последовательности из символов «XYZ» или «ZYX» в том числе и вперемежку (см. пример).

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

Входной файл INPUT.TXT содержит строку из латинских символов. Длина строки не превосходит 100 000 символов.

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

В выходной файл OUTPUT.TXT записывается максимальное число подряд идущих символов из последовательностей «XYZ» и «ZYX».

4. МаксиШифр (продолжение)

Примеры

№       

INPUT.TXT

      OUTPUT.TXT

1         

XXXYZZYXZZZ

       7

2

XYXYZXYZZYXXXX

      10

Примечание. В первом тесте последовательность состоит из символов XYZZYXZ (XYZ-ZYX-Z). От последней последовательности ZYX есть только 1 буква. Во втором тесте последовательность XYZ-XYZ-ZYX-X.

Для получения дополнительных баллов выполняйте тестирование. Тестирование проходим только одно и один раз.

Название полученных файлов с расширением .py должно включать Ваши Ф.И.О. и номер задания

Например Иванов.С.Б.1.py

Итоговая форма загрузки файлов

 

Отчет по работе можно выполнять следующим образом:

  1. В файлах с расширением .py отправленном в архиве через гугл форму.
  2. Разместить архив с файлами решений своей папке на гугл диске, указав ссылку на папку в итоговой гугл форме.

Олимпиада IT 2023

By iavorskii

Олимпиада IT 2023

  • 297