10 класс
  • Теоретический тур  10 класс
    THEORETICAL ROUND  10 KLASS


Описание

1. (10 баллов)
Составить алгоритм, который находит в целочисленной таблице A[1:N] длину наибольшей непрерывной последовательности, состоящей из одинаковых чисел. 

2. (15 баллов)
Числом соответствий для двух строк А и В назовем максимально возможное количество пар (А[i], B[j]), образованных из i-го символа строки А и j-го символа строки В, таких что А[i]=B[j], и каждый символ из строк А или В входит не более чем в одну пару. Например, для строк А="АВСВВ" и В="ВАDDBA" число соответствий равно 3. Составить алгоритм, который определяет число соответствий для двух заданных строк. 

3. (20 баллов)
В прямоугольном поле NхМ, разбитом на клетки, находится замкнутая непрерывная ломаная линия шириной в одну клетку, которая может изгибаться только на 90 градусов и не имеет самопересечений. Составить алгоритм, определяющий количество клеток внутри ломаной. 

4. (25 баллов)
Власти выделили деньги на постройку кольцевой дороги вокруг города. Координаты всех домов в городе заданы парами целых чисел, так что каждый дом можно считать точкой на координатной плоскости. Составить алгоритм, который построит дорогу минимальной длины, охватывающей все дома города, в виде последовательности отрезков, соединяющих дома, мимо которых она должна пройти. 

5. (30 баллов)
В научно-исследовательской лаборатории разработали модель робота, который функционирует по заданной программе. В программе могут присутствовать команды - сделать шаг влево, шаг вправо, шаг вверх или шаг вниз. Робот выполняет программу строго последовательно и, дойдя до конца программы, останавливается. Составить алгоритм, который определяет количество различных программ, состоящих ровно из К команд, таких, что робот, выйдя из начала координат, придет в точку с координатами (X,Y). Единица измерения декартовой системы координат соответствует одному шагу робота.