Олимпиада Курчатов 2013

advertisement
Олимпиада «Курчатов» — 2013
Интернет-этап по информатике • Первый тур
Мы приглашаем вас принять участие в серии не совсем обычных олимпиад по информатике. Каждая из олимпиад будет посвящена одной или нескольким темам. Каждая тема —
это цикл задач, связанных одним сюжетом, таким образом, каждая тема представляет собой
мини-исследование в определенной области.
Как же решать предложенные задачи? Во всех задачах требуется лишь найти ответ, при этом
мы никак не ограничиваем средства, используемые при его поиске. Какие-то задачи можно решить просто в уме, или воспользовавшись ручкой и бумажкой. Для других задач потребуется
калькулятор, или табличный процессор (такой как Excel). В более сложных задачах вам придется написать программу, которая возможно будет искать решение не один час. Не следует
также брезговать поиском в интернете — там можно найти полезные идеи или готовые ответы:
такие решения тоже допускаются.
В некоторых задача правильный ответ единственный, в других есть несколько вариантов
правильного ответа — в этом случае будет засчитан любой из них. В каких-то задачах «правильного» ответа нет, и чем лучше будет ваш ответ (например, чем длиннее будет число, обладающее
искомыми свойствами), тем больше баллов за задачу вы получите. Баллы за все задачи тура
суммируются.
Мы решили не разделять задачи по классам, потому что ваши возможности зависят не от
того, в каком классе вы учитесь, а от того, как хорошо вы владеете компьютером, как давно
вы занимаетесь информатикой и как далеко продвинулись в своих навыках и умениях. Мы
надеемся, то все учащиеся 6 — 11 классов найдут доступные для себя задачи в каждом туре.
Желаем успеха!
1
i. клеточный автомат
В 1970 году английский математик Джон Конвей придумал игру, которую назвал «Жизнь».
Полем для данной игры служит бесконечный лист клетчатой бумаги. Каждая клетка может
быть либо живой, либо мёртвой. Перед началом игры на листе выбирается произвольный набор
живых клеток.
Соседями клетки считаются 8 окружающих ее клеток (слева, справа, сверху, снизу и по
диагоналям). На каждом шаге часть клеток умирает, часть — оживает, а остальные не меняют
своего состояния. Эти изменения происходят по следующим правилам.
• Если на текущем шаге у мёртвой клетки ровно три живых соседа, то на следующем шаге
она оживает.
• Если на текущем шаге у живой клетки меньше двух живых соседей (то есть либо один
живой сосед, либо ни одного), то она умирает от одиночества. Однако, если соседей у нее больше
трёх, она тоже умирает — уже от перенаселенности.
Рассмотрим игру на простом примере (табл. 1).
Начальное положение
Белым обозначены мёртвые клетки,
серым — живые.
Первое поколение
В начальной конфигурации у каждой живой клетки было два или три
живых соседа, поэтому ни одна клетка не умерла. Но у двух мёртвых клеток было по три живых соседа, поэтому они ожили.
Второе поколение
Две центральные клетки умерли от
перенаселенности, поскольку у них
было по пять живых соседей.
Третье поколение
В последующих поколениях никаких
изменений не происходит, поскольку
у каждой живой клетки ровно два соседа, и нет ни одной мёртвой клетки,
у которой ровно три живых соседа.
Таблица 1
Обратите внимание: мы называем первым поколением колонию клеток, образовавшуюся
после первого хода, вторым поколением — колонию клеток, образовавшихся после второго хода,
и т. д.
Задача A. Исследуйте колонию, изображенную на рис. 1, при различных значениях N.
⊲ 1. Гибель колонии I. После какого шага колония умрет, если N = 2?
⊲ 2. Гибель колонии II. После какого шага колония умрет, если N = 100?
⊲ 3. Размер колонии I. Из скольких клеток будет состоять колония через 100 шагов, если N = 3?
2
N пустых
столбцов
Рис. 1. Симметричная колония
⊲ 4. Размер колонии II. Из скольких клеток будет состоять колония через 100 шагов, если N =
= 333?
⊲ 5. Размер колонии III. Из скольких клеток будет состоять колония через 2435 шагов, если
N = 333?
Задача B.
Рис. 2. Глайдерное ружьё
⊲ 6. Размер колонии IV. Сколько живых клеток будет в колонии на рисунке 2 после 1000 ходов?
Задача C. Рассмотрите все начальные конфигурации, помещающиеся в квадрат 3 × 3 (их всего
511, не считая конфигурацию, в которой изначально все клетки мертвые).
⊲ 7. Смертность. Сколько из этих конфигураций умирают после одного или нескольких ходов?
⊲ 8. Стабильность. Назовем конфигурацию стабильной, если состояние ни одной из ее клеток
не меняется после хода. Сколько из этих конфигураций начиная с какого-то хода являются
стабильными (то есть становятся такими или стабильны изначально)?
Задача D. Исследуйте конфигурации, приведенные на рисунках.
⊲ 9. Периодическая конфигурация. Назовем конфигурацию периодической с периодом T , если
через T ходов все клетки возвращаются к тому же состоянию, в котором находились T ходов
назад, причём T — минимальное из таких чисел (например, если клетки возвращаются к своему
исходному состоянию через 2, 4, 6, . . . ходов, то периодом будем считать число 2). Период
стабильной конфигурации равен 1. Найдите период конфигурации на рис. 3.
Рис. 3. Периодическая конфигурация
3
⊲ 10. Большая периодическая конфигурация. Найдите период конфигурации на рис. 4.
Рис. 4. Большая периодическая конфигурация
4
ii. «длинная» арифметика
— А теперь, — продолжила учительница литературы, — давайте обсудим символику числа...
— 1024! — суфлерским шепотом произнес Саша, главный программист класса. Класс одобрительно загудел.
— Да при чем тут 1024? — возмутилась учительница. — Что в нем хорошего, в этом вашем
1024?
— Как это — что? — возмутился в ответ класс. — Это же два в десятой степени!
— И что? Ничего хорошего в этих ваших степенях двойки нет. — отрезала учительница. —
Давайте лучше поймем, зачем автор указывает нам на то, что от дома главного героя было
ровно 730 шагов до. . .
Класс спорить не стал, не желая ссориться с преподавателем, однако после уроков было
решено доказать, что на самом деле степени двойки куда интереснее шагов главного героя
романа.
Задача A. Рома хочет найти такие степени двойки, которые после перестановки цифр в десятичной записи становятся степенями каких-то других чисел.
⊲ 11. Степень тройки. Найдите степень двойки (больше 1), которая после перестановки цифр в
десятичной записи становится степенью тройки. Запишите это число, либо 0, если таких чисел
не существует.
⊲ 12. Степень пятерки. А может ли степень двойки после перестановки цифр оказаться степенью
пятерки? Запишите такое число, либо 0, если таких чисел не существует.
⊲ 13. Степень большого числа. Теперь попробуйте найти как можно большее число, которое
больше 5 и не является степенью двойки, что после перестановки цифр в какой-то степени
двойки получается степень этого числа. Чем больше окажется это число, тем больше баллов
за эту задачу вы получите. Формально: требуется найти как можно большее число a, которое
больше 5 и само не является степенью двойки, что 2n получается перестановкой цифр из ak ,
где k больше единицы. В ответе нужно написать два числа через пробел: a и k. Например: 123
45 (данная запись означает, что 12345 получается перестановкой цифр из некоторой степени
двойки; это, конечно, не правильный ответ, а лишь пример того, как нужно вводить числа в
ответе).
⊲
⊲
⊲
⊲
Задача B. Коля ищет степени двойки, содержащие несколько нулей подряд.
14. Два нуля. Может ли десятичная запись степени двойки содержать два нуля подряд? Если
да, то запишите любое такое число. Если таких чисел не существует, запишите в ответ число 0.
15. Три нуля. Тот же вопрос про три нуля подряд. Если таких чисел не существует, запишите
в ответ число 0.
16. Четыре нуля. Тот же вопрос про четыре нуля подряд. Если таких чисел не существует,
запишите в ответ число 0.
17. Пять нулей. Тот же вопрос про пять нулей подряд. Если таких чисел не существует, запишите в ответ число 0.
Задача C. Женя думает, что если число 2 возвести в очень большую степень, то все цифры
(0, 1, 2, 3, 4, 5, 6, 7, 8, 9) будут встречаться в десятичной записи этого числа одинаково часто.
Подтвердите или опровергните его гипотезу.
⊲ 18. Частота цифр. Запишите в ответ через пробел 10 чисел: сколько процентов цифр какой-то
достаточно большой степени двойки будут нулями, сколько — единицами, cколько — двойками,
и так далее до девяток. Вводимые числа округлите до ближайшего целого. Например, ответ
может выглядеть так: 10 20 0 30 11 9 5 5 5 5.
⊲ 19. Средняя цифра. Чему равно среднее арифметическое цифр в достаточно большой степени
двойки? Запишите число (не обязательно целое), по возможности максимально точно. (Чем
точнее будет ответ, тем больше баллов за эту задачу вы получите). Например: 5,5555555555
5
Задача D. Петя заметил, что степени двойки могут начинаться с любой цифры, а оканчиваться — только на чётную. Он выписал первые 100 000 степеней двойки (от 21 до 2100 000 ).
⊲ 20. Последние цифры. Запишите через пробел 10 чисел: у скольки процентов этих чисел последняя цифра 0, у скольки 1, и так далее до 9. Вводимые числа округлите до ближайшего
целого.
⊲ 21. Первые цифры. Запишите через пробел 10 чисел: сколько процентов из этих чисел начинаются на 0, сколько — на 1, и так далее до 9. Вводимые числа округлите до ближайшего
целого.
Задача E. Серёжа пытается понять, чему может быть равна сумма цифр десятичной записи
двойки. Помогите ему в этом.
⊲ 22. Сумма цифр. Выпишите через пробел как можно больше степеней двоек с одинаковой для
всех суммой цифр. Например: 512 8 (сумма цифр равна 8).
Задача F. Саша задумался над свойстами числа 1024. Он, конечно, знает, что 210 = 1024, но
вот существуют ли еще степени двойки, десятичная запись которых оканчивается на 1024, он
не знает.
⊲ 23. ...1024. Найдите степень двойки, отличную от 210 , которая заканчивается на 1024. Если
таких чисел нет, запишите 0.
⊲ 24. ......1024. Найдите степень двойки, оканчивающуюся на 1024, в десятичной записи которой
больше 100 000 цифр. Если таких чисел нет, запишите 0.
⊲ 25. 1024... Найдите степень двойки, отличную от 210 , которая начинается на 1024. Если таких
чисел нет, запишите 0.
6
Download