Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки

HotLog


 
[Положение] [Расписание] [Архив] [Содержание] [Задачи] [Рейтинг]

Задачи олимпиады "Муниципальный этап ВОШ Красноярского края по информатике, 9-11 классы"

Задача A. Капитал

(Время: 1 сек. Память: 16 Мб Баллы: 100)

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

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

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

Единственная строка входного файл INPUT.TXT содержит два целых числа A и N – требуемая сумма цифр и максимальное количество цифр в числе B (1 ≤ A ≤ 106, 1 ≤ N ≤ 105).

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

В выходной файл OUTPUT.TXT выведите максимальное число B, которое удовлетворяет описанным ограничениям. Если такого числа не существует, выведите -1.

Примеры

INPUT.TXTOUTPUT.TXT
18 18
214 295

Задача B. Шаблон-палиндром

(Время: 1 сек. Память: 16 Мб Баллы: 100)

Шаблоном размера N назовем строку длины N, каждый из символов которой входит в множество {0, 1, ?}. Шаблоны преобразуются в строки из нулей и единиц по следующим правилам:

  • символы «0» и «1» могут быть преобразованы только сами в себя;
  • символ «?» может быть преобразован либо в «0», либо в «1»;

Палиндромом называется строка, одинаково читающаяся с обеих сторон. Например, строка «abba» является палиндромом, а строка «abc» – нет.

Необходимо найти лексикографически наименьшую строку, являющуюся палиндромом, в которую может быть преобразован заданный шаблон P.

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

Входной файл INPUT.TXT содержит шаблон P длиной от 1 до 1000 символов.

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

В выходной файл OUTPUT.TXT выведите искомый палиндром. Если такой палиндром получить невозможно, выведите «NO SOLUTION» (без кавычек).

Примеры

INPUT.TXTOUTPUT.TXT
101????00100010
2010?NO SOLUTION

Задача C. Делители

(Время: 1 сек. Память: 16 Мб Баллы: 100)

Для натурального числа N требуется найти такое целое число M (1 ≤ M ≤ N), которое имеет максимальное количество натуральных делителей.

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

Входной файл INPUT.TXT содержит единственное натуральное число N (1 ≤ N ≤ 108).

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

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

Пример

INPUT.TXTOUTPUT.TXT
12012
6

Пояснение к примеру

Среди чисел от 1 до 20 максимальное число делителей (шесть) имеют числа 12, 18 и 20. Например, числа 1, 2, 3, 4, 6 и 12 являются делителями числа 12. В качестве ответа в первой строке можно вместо 12 вывести 18 или 20.

Система оценки

Решения, работающие только для N ≤ 103, будут оцениваться в 20 баллов.

Решения, работающие только для N ≤ 105, будут оцениваться в 50 баллов.

Решения, работающие только для N ≤ 106, будут оцениваться в 70 баллов.


Задача D. Сумма

(Время: 1 сек. Память: 32 Мб Баллы: 100)

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

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

Входной файл INPUT.TXT содержит целое число N (1 ≤ N ≤ 780).

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

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

Пример

INPUT.TXTOUTPUT.TXT
164

Пояснение к примеру

Есть 4 варианта разложения числа 6 на нечетные слагаемые: 1+1+1+1+1+1, 3+1+1+1, 3+3 и 5+1.

Система оценки

Решения, работающие только для N ≤ 10, будут оцениваться в 25 баллов.

Решения, работающие только для N ≤ 150, будут оцениваться в 75 баллов.


Задача E. Простой путь

(Время: 5 сек. Память: 512 Мб Баллы: 100)

Дано поле размером N×M, клетки которого раскрашены в белый и чёрный цвет. По клеткам с белым цветом можно свободно перемещаться, а по чёрным клеткам перемещение невозможно.

Требуется определить: существует ли простой путь из клетки (r1,c1) в клетку (r2,c2). Известно, что стартовая клетка всегда находится не ниже и не правее, чем конечная. Под простым путем будем понимать непрерывный маршрут от одной клетки к другой, представляющий собой ломаную с не более чем двумя изгибами. Перемещаться можно только вправо или вниз.

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

Первая строка входного файла INPUT.TXT содержит два целых числа N и M – размеры поля (1 ≤ N×M ≤ 106). В следующих N строках идет описание поля. Каждая строка состоит из нулей и единиц и имеет длину M. Единица в r-й строке на c-й позиции означает, что в клетке с координатами (r,c) находится белая клетка, а ноль обозначает чёрную клетку.

В следующей строке записано целое число Q – количество запросов (1 ≤ Q ≤ 105). Каждая из следующих Q строк содержит данные запроса в формате r1 c1 r2 c2 (1 ≤ r1 ≤ r2 ≤ N, 1 ≤ c1 ≤ c2 ≤ M). Данная строка описывает маршрут из клетки (r1,c1) в клетку (r2,c2).

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

В выходной файл OUTPUT.TXT выведите непрерывную последовательность из Q цифр, где i-я цифра равна единице, если для i-го запроса во входных данных существует простой путь, либо нулю, если простого пути нет.

Пример

INPUT.TXTOUTPUT.TXT
16 7
1110010
1010010
1011110
0100100
0100110
0111000
8
1 1 3 6
1 2 4 5
4 2 4 2
1 6 5 6
2 4 3 4
2 3 2 6
3 3 5 5
3 3 5 6
10100011

Система оценки

Решения, работающие только для N×M ≤ 2500 и Q ≤ 50, будут оцениваться в 50 баллов.

Решения, работающие только для N×M ≤ 250 000 и Q ≤ 50 000, будут оцениваться в 80 баллов.


Задача F. Города и дороги

(Время: 1 сек. Память: 64 Мб Баллы: 100)

Известно, что в Байтландии всего N городов и нет дорог! Известно, что все города расположены в различных точках на плоскости и никакие три из них не лежат на одной прямой.

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

Был подготовлен проект, включающий описание из N-1 непересекающихся дорог. Каждая дорога задаётся парой городов и в целях секретности вместо названий городов были использованы коды – числа от 1 до N.

Однако документ, содержащий соответствие кодов городам, был утерян. Была поставлена задача: найти хоть какое-то возможное сопоставление номеров городам. К сожалению, из-за того, что пересечение дорог недопустимо, не любой вариант подходит. Это значительно усложнило задачу.

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

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

В первой строке входного файла INPUT.TXT содержится целое число N – количество городов в Байтландии (2 ≤ N ≤ 1500). Далее следует N описаний городов. Описание каждого города состоит из двух строк. Первая строка содержит название города – строку, состоящую из символов с ASCII-кодами от 33 до 127. Названия различных городов не совпадают. Названия городов имеют длину от 1 до 60 символов. Вторая строка описания города содержит два целых числа x и y – координаты города. Координаты не превышают 104 по абсолютной величине. Гарантируется, что никакие три города не лежат на одной прямой.

Далее следуют N-1 строк, которые описывают проект постройки сети дорог в его текущем состоянии. Каждая строка содержит по два целых числа от 1 до N – номера городов, соединённых дорогой в проекте. Никакая дорога в проекте не соединяет город сам с собой, никакие два города не соединены более чем одной дорогой. В проекте упомянуты все города от 1 до N. По дорогам проекта можно добраться от любого города до любого другого.

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

В выходной файл OUTPUT.TXT выведите N строк, i-я из этих строк должна содержать название города, который следует сопоставить числу i в проекте. Если решений несколько, выведите любое.

Если решения не существует, выведите «No solution».

Пример

INPUT.TXTOUTPUT.TXTПояснение
16
Borodino
2 -1
Achinsk
-3 1
Abakan
-2 -4
Lesosibirsk
-1 4
Kansk
3 1
Krasnoyarsk
0 0
3 5
1 4
4 2
3 4
4 6
Kansk
Abakan
Achinsk
Krasnoyarsk
Lesosibirsk
Borodino
Карта Байтландии

Система оценки

Решения, работающие только для N ≤ 10, будут оцениваться в 50 баллов.



Красноярский краевой Дворец пионеров, (c)2006 - 2022, E-mail: admin@acmp.ru



Статьи про строительство.