Задача 1. Введем функцию f(n), которая будет в качестве аргумента принимать целое неотрицательное число и принимать значения 1 или 2. 1 в случае, если при n имеющихся в начале игры монетах побеждает первый игрок, и 2 в случае, если побеждает в итоге второй игрок. Будем набирать значения этой функции последовательно, начиная с n=1. При n=1 первому игроку логично взять 1 монету и выиграть. При n=2, 3 и 4 то же самое. То есть f(1)=f(2)=f(3)=f(4)=1. Теперь рассмотрим n=5. В этом случае как бы первый игрок ни пошел, выиграет второй игрок, потому что для второго игрока остаются монеты, которые он может все забрать. То есть f(5)=2. Теперь рассмотрим n=6. Первый игрок может поставить второго игрока в такое же положение, в каком он был, когда игра начиналась с 5 монет. То есть, взяв одну монету, первый игрок оставляет 5 монет второму игроку. Второй игрок же не может их все взять. В итоге побеждает первый. То есть f(6)=1. Аналогично и для 7,8,9 - первому игроку надо брать соответственно 2,3 и 4 монеты, чтобы поставить второго игрока в положение при n=5. Суть в том, что если у первого игрока изначально есть n монет и если он может поставить второго игрока в проигрышную ситуацию, если уберет от 1 до 4 монет, то выиграет 1 игрок. В противном случае выиграет второй. То есть если хотя бы одно из значений f(n-1), f(n-2), f(n-3) и f(n-4) равно 2, то побеждает первый игрок, то есть f(n)=1. Иначе f(n)=2. Основываясь на такой зависимости, можно выписать несколько первых элементов: 1, 1, 1, 1, 2, 1, 1, 1, 1, 2, 1, 1, 1, 1, 2 Зависимость получилась периодическая с периодом 5: 1, 1, 1, 1, 2. То есть каждое 5-е значение проигрышное для первого игрока. Это и логично, поскольку большего количества единиц подряд, чем 4, быть не может. Таким образом, f(60)=2 - победит второй игрок. Задача 2. Тут можно построить дерево. Его корнем пусть будет 1. Дальше от него могут идти значения 3 и 7, поскольку другие значения в сумме с 1 будут давать числа, кратные 3, 5 или 7. И так далее. В итоге дерево, наверное, не сильно большое получится, но мне было лень это делать, и я написал рекурсивный перебор и получил такие ответы: 1 3 8 5 6 2 9 4 7 1 7 4 9 2 6 5 8 3
Скорость Время Расстояние пароход собств 22 км/ч течение реки 3 км/ч по течению 22+3 (км/ч) 2_1/2 ч всего против течения 22 -3 (км/ч) 3_1/15 ч ?
1) 22+3=25 км/ч - скорость по течению реки 2) 22-3=19 км/ч - скорость против течения реки 3) 25*2_1/2 = 25 * 5/2 = 62_1/2 км пароход по течению реки 4) 19*3_1/15 = 19* 46/15 = 874/15=58_4/15 км пароход против течения реки 5) 62_1/2 + 58_4/15 = 62_15/30 + 58_8/30 = 120_23/30 км пароход всего
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку