img img img img img img img img img img img img img img img img img img img img img img
Логотип Человек живет, пока думает.
Решайте задачи и живите долго!
Для участия в проекте необходимо
и достаточно зарегистрироваться!
Rss Регистрация || Вход
Вход
Diofant.ru
Картинка
Отражение Отражение Картинка Картинка
отражение
Лента событий: Robotman решил задачу "Трое в кафе" (Математика):
Рисунок
Rss

Задачи: Информатика   

Пожалуйста, не пишите нам, что вы не можете решить задачу.
Если вы не можете ее решить, значит вы не можете ее решить :-)
Показывать на странице:
Задачу решили: 3
всего попыток: 6
Задача опубликована: 09.04.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 1 img
баллы: 100

Лист бумаги представляет собой прямоугольник размером M × N, где M и N – натуральные числа. Отметим на его сторонах точки с целочисленными координатами, а затем будем разрезать этот лист, руководствуясь следующими правилами:
1. Каждый разрез представляет собой отрезок, соединяющий отмеченные точки.
2. Разрезы не пересекаются, но могут иметь общие концы, соответствующие отмеченным точкам.
3. Мы будем продолжать делать разрезы, пока не останется кусков, которые можно разрезать, не нарушая правил 1 и 2.
Ясно, что по указанным правилам наш лист можно разрезать несколькими способами. Некоторые из этих способов будут симметричны или отличаться друг от друга только поворотом, но мы будем считать такие способы различными. Пусть F(M,N) – это количество способов, которыми можно разрезать прямоугольный лист размером M × N.
Например, F(1,1)=2, F(1,2)=F(2,1)=6, F(2,2)=30.
Случай M=2, N=2 проиллюстрирован рисунком:

eu270.png

Найдите остаток от деления F(25,35) на 108.

Задачу решили: 5
всего попыток: 7
Задача опубликована: 14.05.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 1 img
баллы: 100

Определим уравновешенную статую как полимино, удовлетворяющее следующим требованиям:

  • Статуя порядка n состоит из n единичных квадратов — блоков и еще одного квадрата — постамента (всего — n+1 квадрат).
  • Центр постамента находится в начале координат (x = 0, y = 0).
  • Центры всех блоков имеют положительные координаты y, так что постамент находится ниже остальных квадратов.
  • Центр масс уравновешенной статуи имеет нулевую горизонтальную координату x.

Подсчитаем количество различных уравновешенных статуй порядка n. При этом статуи, симметричные друг другу относительно вертикальной оси, будем считать одинаковыми. На рисунке показаны уравновешенные статуи порядка 6. Объединив симметричные, получим 18 различных уравновешенных статуй.

eu275.gif

Пусть Z(n) – количество уравновешенных статуй порядка n. Тогда  Z(6)=18, Z(10)=964, Z(15)= 360505.

Найдите ∑Z(n)  для 1 ≤ n ≤ 18.

Задачу решили: 3
всего попыток: 12
Задача опубликована: 30.07.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 3 img
баллы: 100

Рассмотрим метод кодирования черно-белых изображений при помощи квадрадеревьев для квадратного изображения размером 2N×2N  однобитовых пикселей. Сгенерируем кодирующую последовательность из нулей и единиц по следующим правилам:

  • Первый бит относится ко всему квадрату 2N ×2N
  • "0" означает ветвление дерева, и текущий квадрат 2n×2n разделяется на четыре меньших квадрата размером 2n-1×2n-1. Следующие за нулем биты содержат описание этих четырех квадратов, сначала левого верхнего, затем правого верхнего, левого нижнего и правого нижнего (именно в этой последовательности).
  • "10" означает, что данный квадрат содержит только черные пиксели;
  • "11" означает, что данный квадрат содержит только белые пиксели.

В качестве примера рассмотрим изображение размером 4×4, где цветными крестиками обозначены точки ветвления.

eu287.png  

В принципе, изображение может быть закодировано несколькими различными битовыми последовательностями, например, "001010101001011111011010101010" или "0100101111101110". Первая из этих последовательностей содержит 30 битов, а вторая – только 16, и эта длина является минимальной.

Рассмотрим теперь изображения размером 2N×2N, построенные следующим образом:

  • Пиксель с координатами x=0, y=0 соответствует левому нижнему углу изображения,
  • Если  (x-2N-1)2+(y-2N-1)2 ≤ 22N-2 , то соответствующий пиксель черного цвета,
  • Остальные пиксели - белые.

Для изображения данного типа с N=24 найдите кодирующую последовательность минимальной длины. Сколько единиц она содержит?

 

Задачу решили: 2
всего попыток: 5
Задача опубликована: 22.10.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 2 img
баллы: 100
Темы: алгоритмыimg

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

По ходу дела выяснилось, что и Лёва, и Петя могут удержать в голове не более пяти разных чисел. Если игрок уже помнит пять чисел, то чтобы запомнить следующее, не содержащееся к этому моменту в его памяти, он вынужден забыть одно из имеющихся. Однако оказалось, что забывание происходит несколько по-разному:

  • Лёва забывает то число, которое не выдавалось генератором наиболее продолжительное время
  • Петя забывает то число, которое первым попало в память.

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

Вот пример начала игры:

Тур

Очередное число

Память Лёвы

Очки Лёвы

Память Пети

Очки Пети

1

1

1

0

1

0

2

2

1,2

0

1,2

0

3

4

1,2,4

0

1,2,4

0

4

6

1,2,4,6

0

1,2,4,6

0

5

1

1,2,4,6

1

1,2,4,6

1

6

8

1,2,4,6,8

1

1,2,4,6,8

1

7

10

1,4,6,8,10

1

2,4,6,8,10

1

8

2

1,2,6,8,10

1

2,4,6,8,10

2

9

4

1,2,4,8,10

1

2,4,6,8,10

3

10

1

1,2,4,8,10

2

1,4,6,8,10

3

Обозначим количество очков, которые Лёва и Петя набрали после 50 туров через L и P, соответственно. Найдите математическое ожидание величины (L-P)2, результат умножьте на 108 и округлите до ближайшего целого.

Задачу решили: 6
всего попыток: 7
Задача опубликована: 05.11.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 1 img
баллы: 100

В сильно  упрощенной модели белки можно рассматривать как цепочки гидрофобных (H) и полярных (P) элементов, например HHPPHHHPHHPH.

В этой задаче мы будем считать, что ориентация белка существенна, то есть белки HPP и PPH мы будем считать различными, а количество белков из n элементов будет равно 2n.

Гидрофобные элементы притягиваются друг к другу, и белок принимает наиболее энергетически выгодную конфигурацию так, чтобы максимизировать количество связей H-H. 

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

На рисунке показаны две конфигурации одного белка (связи H-H отмечены красными точками)

eu300.gif        

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

Правая конфигурация имеет девять связей H-H, и это максимальное значение для такой цепочки. Будем называть оптимальными те конфигурации, которые обеспечивают максимальное количество связей H-H для данной цепочки.

77 из 256 восьмиэлементных цепочек в оптимальной конфигурации имеют более 4 связей H-H.

Сколько цепочек, состоящих из 15 элементов, в оптимальной конфигурации будут иметь более 9 связей H-H?

Задачу решили: 2
всего попыток: 3
Задача опубликована: 31.12.12 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 2 img
баллы: 100
Темы: алгоритмыimg

 

Английский математик Джон Хортон Конвей изобрел множество математических развлечений, доставляющих не только удовольствие, но и пищу для серьезных размышлений. Одно из его изобретений – язык программирования FRACTRAN, о котором пойдет речь в данной задаче.

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

Вот, например, FRACTRAN-программа, предложенная Конвеем для получения последовательности простых чисел:

17/91, 78/85, 19/51, 23/38, 29/33, 77/29, 95/23, 77/19, 1/17, 11/13, 13/11, 15/2, 1/7, 55/1.

Записав в память исходное значение 2, получим в памяти ряд чисел в следующей последовательности:

15, 825, 725, 1925, 2275, 425, 390, 330, 290, 770, 910, 170, 156, 132, 116, 308, 364, 68, 4, 30, ..., 136, 8, 60, ..., 544, 32, 240, ...

Оказывается, степени двойки в полученной последовательности встречаются только с простыми показателями: 22, 23, 25, ..., и можно проверить, что данная последовательность будет содержать в порядке возрастания все степени двух с простыми показателями.

Заметим, что для получения 22 из исходного числа 2 потребовалось 19 шагов программы, и при этом три раза происходило умножение на дробь 13/11.

А сколько раз придется выполнить умножение на 13/11 при переходе от исходного числа 2 к 2111119?

 

 

Задачу решили: 3
всего попыток: 11
Задача опубликована: 28.01.13 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 2 img
баллы: 100

 

Рассмотрим построение последовательности графов Серпинского:

  • Граф Серпинского первого порядка S1 представляет собой равносторонний треугольник (три вершины и три соединяющих их ребра).
  • Граф Серпинского  Sn+1 порядка n+1 представляет собой объединение трех графов Sn, имеющих попарно общую вершину, как показано на рисунке:

 eu312-1.gif

Пусть C(n) — количество циклов, проходящих через каждую вершину  Sn ровно один раз. Например, C(3)=8, поскольку граф  S3 позволяет построить ровно 8 подобных циклов, как показано на рисунке: 

eu312-2.gif

Легко проверить, что 

C(1) = C(2) = 1

C(5) = 71328803586048

C(10 000) mod 108 = 37652224

C(10 000) mod 710 = 221100305

(Здесь a mod b означает остаток от деления a на b.)

Найдите C(C(C(10 000))) mod 710.

 

Задачу решили: 4
всего попыток: 4
Задача опубликована: 18.03.13 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 2 img
баллы: 100
Лучшее решение: Shamil

Обозначим через N(i) наименьшее натуральное число n,  факториал которого n! делится на (i!)1234567890 .

Сумма N(i) для всех составных натуральных i, не превышающих 1000, равна 520804933959105.

Найдите сумму N(i) для всех составных натуральных i, не превышающих 1 000 000. В качестве ответа укажите 18 младших разрядов результата.

Задачу решили: 1
всего попыток: 4
Задача опубликована: 20.05.13 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 2
сложность: 3 img
баллы: 100
Темы: алгоритмыimg

Широко известна игра, где один из участников задумывает целое число, а другой пытается его угадать, задавая вопросы. В этой задаче исследуется вариант такой игры, когда задумывают натуральное число из промежутка [1,n], а в качестве вопросов разрешается называть натуральные числа из этого же интервала. При этом стоимость каждого вопроса равна названному числу. Допускаются ответы трех видов:

  1. Ты назвал число меньше задуманного.
  2. Ты угадал!
  3. Ты назвал число больше задуманного.

Требуется определить  задуманное число и при этом минимизировать суммарную стоимость вопросов (в дальнейшем – цена игры). Для данного числа n назовем стратегию оптимальной, если она минимизирует цену игры для самого неудачного задуманного числа.

Например, при n=3 наилучшим первым ходом будет число "2". После этого при любом ответе можно будет точно определить задуманное число, поэтому больше вопросов не потребуется, и цена игры будет равна 2.

Если n=8, мы могли бы выбрать в качестве стратегии "бинарный поиск". Если первым ходом мы назовем число "4", а задуманное число будет больше, чем 4, нам потребуется еще два вопроса. Пусть вторым ходом мы называем число "6". Если задуманное число больше, чем 6, нам потребуется еще один ход, скажем, "7", и цена игры составит 4+6+7=17.

Мы можем существенно улучшить нашу стратегию для n=8, если первым ходом назовем число "5". Если задуманное число больше, чем 5, то вторым ходом мы можем назвать число "7", и этого будет достаточно для нахождения задуманного. Тогда цена игры составит 5+7=12. Если же задуманное число меньше, чем 5, то для его определения достаточно  вторым и третьим ходом назвать "3" и "1", а цена игры составит 5+3+1=9. Поскольку 12 > 9, в худшем случае цена игры при этой стратегии будет равна 12. Получается, что данная стратегия более выгодна, чем предыдущая, и оказывается, что она оптимальна, то есть никакая другая стратегия не может гарантировать для n=8 результат меньший, чем 12.

Пусть C(n) – максимальная цена игры, которая может получиться для оптимальной стратегии в худшем случае. 

Тогда C(1) = 0, C(2) = 1, C(3) = 2 и C(8) = 12.

Можно подсчитать, что  C(100) = 400.

Найдите С(500000).

 
Задачу решили: 0
всего попыток: 0
Задача опубликована: 10.06.13 08:00
Прислал: admin img
Источник: Проект "Эйлер" (http://projecteuler.net)
Вес: 1
сложность: 2 img
баллы: 100

На каждую клетку доски N×N положили по шашке, окрашенной в белый цвет с одной стороны и в черный цвет с другой.

Каждым ходом разрешается перевернуть одну шашку, а вместе с нею N-1 шашек, стоящих  на одной с ней вертикали, и N-1 шашек, стоящих  на одной с ней горизонтали. Таким образом, каждым ходом игрок должен перевернуть 2×N-1 шашку. Игра заканчивается, когда все шашки будут стоять белой стороной вверх. Ниже приведен пример игры для доски 5×5.

eu331.gif  

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

Пусть строки и столбцы перенумерованы целыми числами от 0 до N-1.

Построим на доске N×N начальную конфигурацию CN. Для этого на клетку с координатами x и y положим шашку черной стороной вверх, если (N-1)2≤x2+y2<N2, и белой стороной вверх в противном случае. Конфигурацию C5 мы видели в приведенном примере.

Пусть T(N) – минимальное количество ходов, необходимых для окончания игры из начального положения CN (если это невозможно T(N) = 0).

Ясно , что T(1)=T(2)=1. Мы видели, что T(5)=3. Можно проверить, что T(10)=29, а T(1000)=395253.

Найдите сумму T(k!) для 1≤k≤12.

 
 
Внимание! Если Вы увидите ошибку на нашем сайте, выделите её и нажмите Ctrl+Enter.