Тексты задач городской олимпиады 9-11 классы

Автор: Опубликовано: Дек 7, 2010 В рубрике: Олимпиада

Задача 1. Магический квадрат

 

      Магическим квадратом называется квадрат, состоящий из NхN клеток, заполненный числами от 1 до N2, каждое из которых встречается ровно один раз. При этом числа в квадрате должны обладать следующим свойством: сумма чисел, стоящих на любой горизонтали, вертикали или любой из двух главных диагоналей равна одному и тому же числу.

Требуется написать программу, которая проверяет для заданного квадрата, является ли он магическим.

Формат входных данных

Первая строка входного файла содержит число N (1 ? N ? 102). Далее следует N строк, каждая из которых состоит из N чисел разделенных пробелами. Все числа в этих строках разные и находятся в диапазоне от 1 до N2. Каждая из этих строк соответствует строке чисел квадрата, который надо проверить. Соседние числа в каждой строке разделяются ровно одним пробелом.

Формат выходных данных

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

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

magic.in                             magic.out

1                                         1

1

________________________

2                                       0

1 2

4 3

________________________

3                                          1

8 1 6

3 5 7

4 9 2

Задача 2. Бег с препятствиями

      В компьютерной игре «Бег с препятствиями» нужно провести бегуна от старта до финиша, огибая препятствия. Площадку можно представить себе как сетку дорожек расположенных на квадрате [0,20]х[0,20] координатной плоскости, причем дорожки проходят только по линиям с целочисленными координатами начала и конца. Бегун может перемещаться только по этим дорожкам. Старт всегда расположен ниже финиша. Огибать препятствия он должен так: первое препятствие огибается всегда справа, второе – слева, третье – справа. Препятствий всегда три и они расположены так, что ордината первого больше ординаты старта, ордината второго больше ординаты первого, а ордината третьего больше ординаты второго и меньше ординаты финиша. Компьютерная игра устроена так, что хотя бы один путь у бегуна есть всегда.

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

Формат входных данных

Входной файл в первой строке содержит два целых числа Sx и Sy (0 <= SxSy <=20) – координаты старта для бегуна, а затем еще два целых числа Fx и Fy (0 <= FxFy <=20) – координаты финиша для бегуна. А также выполняется Sy < Fy, как было сказано в условии задачи.

Далее идут три строки, описывающие все четыре препятствия парами вещественных координат xi и yi (0 < xiyi <20), i?{1, 2, 3}.

Числа во всех строках разделены одинарными пробелами.

Формат выходных данных

Выходной файл содержит целое число, которое означает длину кратчайшего пути от старта до финиша.

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

runner.in                    runner.out

0 0 1 6                           13

1 1

1 3

1 5

_____________________________

1 0 1 6                                          6

0 1

2 3

0 5

Задача 3. Суперкомпьютер «Лобачевский»

      В вычислительном центре университета был установлен новый суперкомпьютер «Лобачевский». Этот суперкомпьютер состоит из N узлов, соединенных N линиями связи по топологии кольца, т.е. 1-й узел соединен со 2-м и N-м, 2-й узел с 1-м и 3-м, 3-й узел со 2-м и 4-м и т.д. Каналы связи тоже занумерованы: 1-й узел соединен со 2-м каналом №1, 2-й узел с 3-м каналом №2 и т.д. Петабайтное устройство хранения данных (попросту «винчестер») подключено только к 1-му узлу компьютера и, следовательно, любой узел отличный от 1-го может получить данные только с помощью передачи по каналам соединения, а 1-й узел получает данные мгновенно.

Передача 100 Мб по одному любому каналу связи занимает 2 сек. Обработка данных может быть выполнена для пакета объемом не более 100 Мб и занимает 1 сек в не зависимости от объема пакета. При этом если узел обрабатывает данные, то он занят, и другие данные обрабатывать не может.

Рассылка данных организуется следующим образом: если нужно передать 2*K пакетов, то сначала передаются пакеты данных для узлов K+1 и NK по каналам 1 и N соответственно. Через 2 сек они освобождают каналы связи, и тогда отправляются пакеты для K и NK+1 узлов по каналам 1 и N соответственно, а по каналам 2 и N–1 передаются пакеты данных для узлов K+1 и NK. Еще через 2 сек отправляются пакеты для K–1 и NK+2 узлов по каналам 1 и N соответственно, по каналам 2 и N–1 передаются пакеты данных для узлов K и NK+1, а по каналам 3 и N–2 передаются пакеты для узлов K+1 и NK. Процесс продолжается до тех пор, пока данные не попадут в свои узлы. Затем данные обрабатываются и отправляются обратно: по 1 каналу отправляются данные из 2-го узла в 1-й, по 2-му каналу из 3-го узла во 2-й, … , по N–1 каналу из N–1 узла в N-й, по N каналу из N узла в 1-й. Во время всего этого процесса 1-й узел может выполнять вычисления самостоятельно.

Вам необходимо обработать S пакетов по 100 Мб, используя суперкомпьютер «Лобачевский».

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

Формат входных данных

Входной файл содержит два целых числа N (1<=N<=512)  и S (1<=S<=10 в степени 6)

Формат выходных данных

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

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

computer.in                     computer.out

5 4                                        4

5 6                                         5

Вы можете обсудить этот пост комментариях или в нашем чате, который находится в верхнем правом углу сайта. Если вы не знаете как общаться в чате, то скорее жмите СЮДА! Приятного Вам общения :)

Прокомментировать

Copyright © 2018 Урок информатики All rights reserved.
Тема доработана интернет студией SMOpro, специализация которой реклама в блогах.