Решение задач по информатике для подготовки к ЕГЭ МОУ «Гимназия № 55»

advertisement
МОУ «Гимназия № 55»
Решение задач по информатике
для подготовки к ЕГЭ
Методические рекомендации
Томск - 2010
Авторский коллектив:
Марина Соковец, ученица 11 «Б» класса;
Т.Д. Колесова, учитель информатики.
Решение задач по информатике для подготовки к ЕГЭ. Методические рекомендации. –
Томск, Гимназия 55, 2010.
В методических рекомендациях представлены задачи типа С3 ЕГЭ на анализ игровых
стратегий и их решения, а также приводятся задачи для самостоятельной работы.
2
ОГЛАВЛЕНИЕ
Введение.............................................................................................................................................. 4
Задачи .................................................................................................................................................. 6
Задачи для самостоятельной работы .............................................................................................. 19
3
Введение
Среди многих видов настольных игр имеются
такие, которые называются играми двух лиц с
полной информацией. В этих играх игроки
выполняют ходы поочередно, при этом обоим
игрокам доступна вся информация о текущем
состоянии
игры.
Примерами
подобных
игр
являются шахматы, шашки, крестики-нолики и
многие другие. В таких играх выигрыш одного
игрока
означает
проигрыш
другого,
в
некоторых из игр возможна ничья. В общем
случае можно считать, что если игрок по
окончании игры выиграл, то его выигрыш равен
положительному
числу,
если
проиграл –
то
отрицательному, если ничья – то нулю. Тогда,
если выигрыш первого игрока обозначить за x,
то выигрыш второго игрока будет равен – x, т.е.
сумма выигрышей обоих игроков равна нулю.
Поэтому такие игры называют играми с нулевой
суммой или антагонистическими играми.
Существует
математическая
дисциплина,
называемая теорией игр, в которой доказано
существование
оптимальной
(наилучшей)
стратегии для каждого из игроков. Игрок,
придерживающийся
этой
стратегии,
гарантированно получит выигрыш не меньше,
чем заранее рассчитанный, как бы хорошо ни
играл его противник. Если же игрок будет
отклоняться от этой стратегии, то он может
получить и меньший выигрыш, все зависит от
ходов противника. Для игр с нулевой суммой
оптимальной
является
минимаксная
стратегия, при которой на очередном ходе
игроку
нужно
действовать
так,
чтобы
минимизировать
максимально
возможный
выигрыш противника.
Чтобы
выполнить
анализ
игры
и
найти
минимаксную
стратегию,
можно
построить
схему, называемую деревом игры (дерево растет
сверху вниз или слева направо). Кружками на
этой схеме обозначаются состояния игры,
линиями – переходы из одного состояния в
другое, в зависимости от текущего хода одного
из игроков. Вверху (или слева) находится
4
начальное состояние, с которого начинается
игра. Из начального состояния идут линии
перехода в новые состояния, каждый переход –
это один из возможных ходов первого игрока.
Если при переходе в некоторое состояние игра
заканчивается, то это состояние называется
конечным, из него дальше нет ходов. Когда на
дереве
игры
построены
все
конечные
состояния,
то
никаких
других
ходов,
не
представленных
в
дереве,
больше
не
существует. Такое дерево игры будет полным.
Каждая последовательность ходов на полном
дереве игры, начинающаяся из начального
состояния
и
заканчивающаяся
каким-либо
конечным
состоянием,
называется
партией
(вариантом) игры. Таким образом, дерево игры
содержит
в
себе
информацию
обо
всех
в
принципе возможных партиях, которые можно
реализовать в данной игре.
К сожалению, для сложной игры, например для
шахмат,
построить
полное
дерево
игры
невозможно из-за его размера, даже если для
этого
использовать
самые
мощные
суперкомпьютеры и заставить их работать
годами. Расчеты показывают, что для решения
этой задачи не хватит времени в миллиарды
лет на суперкомпьютере в миллиарды раз более
быстродействующем, чем любой из построенных
на Земле в начале 21 века. В то же время для
более простых игр дерево является удобным
средством вычисления оптимальной стратегии
игры.
5
Задачи
Задача 1
Даны три кучки камней, в первой из которых 3, во
второй – 4 и в третьей – 5 камней. У каждого
игрока неограниченно много камней. Игроки
ходят по очереди. За один ход разрешается
игроку
увеличивать
в
2
раза
количество
камней в меньшей куче (если таких две – то лишь
в одной из них), или добавить 2 камня в большую
из куч (если таких две – то лишь в одну из них).
Выигрывает тот игрок, после хода которого
общее число камней в трех кучах становится не
менее
23
камней.
Кто
выигрывает
при
безошибочной игре обоих игроков – игрок,
делающий первый ход, или игрок, делающий
второй ход? Каким должен быть первый ход
выигрывающего игрока? Ответ обоснуйте.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты
1 игрок
2 игрок
6,4,5
6,8,5 (19)
8,8,5 (21)
Победа
10,4,5 (19)
Победа
6,8,7 (21)
Победа
6,4,9 (19)
Победа
6,4,9 (19)
Победа
3,4,11 (18)
Победа
8,4,5 (17)
3,4,5
3,4,7
6,4,7 (17)
3,4,9 (16)
6,8,5 (19) – невыгодный ход игрока
При безошибочной игре обоих игроков –
выигрывает игрок, делающий второй ход.
6
Задача 2
Два игрока играют в следующую игру. Перед
ними лежат две кучки фишек, в первой из
которых 3, а во второй – 5 фишек. У каждого игрока
неограниченно много фишек. Игроки ходят по
очереди.
Делая
очередной
ход
игрок
или
увеличивает
число
фишек
в
2
раза,
или
добавляет в какую-то кучу 2 фишки. Выигрывает
тот игрок, после хода которого общее число
фишек в двух кучах становится не менее 23. Кто
выигрывает
при
безошибочной
игре
обоих
игроков – игрок, делающий первый ход, или игрок,
делающий второй ход? Каким должен быть первый
ход выигрывающего игрока? Ответ обоснуйте.
Решение
Стартов
ая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
3.5
6.5
12, 5
12, 7
24, 7
Победа
6, 10
6, 14
6, 28
Победа
8, 5
8, 7
16, 7
Победа
6, 7
6, 9
6, 18
Победа
14, 5
28, 5
Победа
7, 10
7, 20
Победа
9, 5
18, 5
Победа
7, 7
7, 14
Победа
Разобра
но выше
Победа
3, 10
Победа
5, 5
5, 10
7, 5
3, 7
6, 7
7
3, 14
5, 7
Разобра
но выше
3, 9
3, 10 (13) – невыгодный ход игрока
При безошибочной игре обоих игроков –
выигрывает игрок, делающий второй ход.
8
Задача 3
Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из
которых 3, а во второй – 2 камня. У каждого игрока неограниченно много камней. Игроки
ходят по очереди. Ход состоит в том, что игрок или увеличивает в 2 раза число камней в
какой-то куче, или добавляет 3 камня в какую-то кучу. Выигрывает игрок, после хода
которого общее число камней в двух кучах становится не менее 16 камней. Кто выигрывает
при безошибочной игре – игрок, делающий первый ход, или игрок, делающий второй ход?
Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
6, 2
12, 2
6, 8 (14)
6, 16
Победа
6, 4
12, 4 (16)
24, 4
Победа
9, 2
9, 4 (13)
18, 4
Победа
6, 5
6, 7 (13)
6, 14
Победа
3, 2
3, 4
См. выше
6, 4
3, 8
См. выше
6, 4
3, 7
5, 2
10, 2
5, 4
10, 4
20, 4
Победа
5, 8
16, 5
Победа
8, 4
16, 4
Победа
5, 7
5, 14
Победа
8, 2
5, 5
10, 5
20, 5
Победа
8, 5
16, 5
Победа
9
3, 5
6, 5
3, 10
6, 5
3, 8
12, 2 (14) – невыгодный ход игрока
При безошибочной игре обоих игроков –
выигрывает игрок, делающий ̆ второй ход.
10
Задача 4
Два игрока играют в следующую игру. На координатной плоскости в точке с координатами (3;2) стоит фишка. Игроки ходят по очереди. Ход состоит в том, что игрок перемещает фишку
из точки с координатами (x,y) в одну из трех точек: (x+5;y), (x,y+4) или (x+3,y+3).
Выигрывает тот игрок, после хода которого расстояние по прямой от фишки до начала
координат (0,0) больше 12 единиц. Кто выигрывает – игрок, делающий ход первым, или
игрок, делающий ход вторым?
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы. В скобках указан квадрат расстояния
от начала координат (победа в том случае, если х 2+у2>144). На каждом из возможных
вариантов ходов, игроки выбирают вариант наименьшего удаления от центра с координатами
х=0, у=0.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
-3, 2
2, 2 (8)
7, 2 (53)
12, 2 (148)
Победа
5, 5 (50)
10, 5 (125)
15, 5 (250)
Победа
2, 6 (40)
7, 6 ( 85)
12, 6 (180)
Победа
5, 5 (50)
10, 5 (125)
15, 5 (250)
Победа
0, 9 (81)
0, 13 (169)
Победа
3, 8 (73)
3, 12 ( 153)
Победа
-3, 6 (45)
2, 6 (40)
-3, 10 (109)
0, 9 (81)
0, 5 (25)
При безошибочной игре обоих игроков –
выигрывает игрок, делающий второй ход.
11
Задача 5
Два игрока играют в следующую игру. Перед ними
лежат три кучки камней, в первой из которых 2,
во второй — 3, а в третьей — 4 камня. У каждого
игрока неограниченно много камней. Игроки
ходят по очереди. За один ход можно удвоить
количество камней в меньшей куче (если их
две, то в каждой из них), либо добавить по 1
камню в каждую из всех трех куч. Выигрывает
тот игрок, после хода которого во всех трех
кучках
суммарно
становится
не
менее
23
камней. Кто выигрывает при безошибочной
игре обоих игроков — игрок, делающий первый
ход, или игрок, делающий второй ход? Каким
должен быть первый ход выигрывающего игрока?
Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
2, 3, 4
4, 3, 4
4, 6, 4
8, 6, 8
8, 12, 8 Победа
5, 7, 5
10, 7, 10 Победа
5, 8, 5
10, 8, 10 Победа
6, 5, 6
6, 10, 6
5, 4, 5
7, 6, 7
3, 4, 5
6, 4, 5
4, 5, 6
6, 8, 5
6, 8, 10 Победа
7, 5, 6
7, 10, 6 Победа
8, 5, 6
8, 10, 6 Победа
5, 6, 7
10, 6, 7 Победа
При безошибочной игре обоих игроков –
выигрывает игрок, делающий второй ход.
12
Задача 6
Два игрока играют в следующую игру. На координатной плоскости стоит фишка. В начале
игры фишка находится в точке с координатами (–3, 2). Игроки ходят по очереди. Ход состоит
в том, что игрок перемещает фишку из точки с координатами (x, y) в одну из трех точек: (x–1,
y+3), (x+3, y–1), (x+2, y+2). Игра заканчивается, как только расстояние от фишки до начала
координат превысит число 8. Выигрывает игрок, который сделал последний ход. Кто
выигрывает при безошибочной игре – игрок, делающий первый ход, или игрок, делающий
второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы. В скобках указан квадрат расстояния
от начала координат (победа в том случае, если х2+у2>64). На каждом из возможных
вариантов ходов, игроки выбирают вариант наименьшего удаления от центра с координатами
х=0, у=0.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
-3, 2
-4, 5 (8)
-5, 8 (89)
эту ветку
Победа
можно не
-1, 4 (17)
раасматривать
т.к. у 2-го
игрока есть
вариант победы
-2, 7 (53)
-3, 10 (109)
Победа
1, 6 (37)
0, 9 (81) Победа
2, 3 ( 13)
1, 6 (37)
5, 2 (29)
4, 5 (41)
1, 6 (37)
0, 9 (81) Победа
4, 5 (41)
3, 8 (73) Победа
-2, 7 (53)
-3, 10 (109)
Победа
0, 9 (81) Победа
1, 6 (37)
4, 5 (41)
0, 9 (81) Победа 3, 8 (73) Победа
0, 1 (1)
-1, 4 (17) этот вариант рассмотрен выше, он
приводит к победе 2-го игрока
13
3, 0 (9)
2, 3 (13)
1, 6 (37)
5, 2 (29)
4, 5 (41)
6, -1 (37)
5, 2 (29)
9, -2 (85)
Победа
8, 1 (65) Победа
5, 2 (29)
4, 5 (41)
8, 1 (65) Победа
7, 4 (65) Победа
2, 3 (13) этот вариант рассмотрен выше, приводит
к победе 1-го игрока
-1, 4 (17)
-2, 7 (53)
-3, 10 (109)
Победа
1, 6 (37)
0, 9 (81) Победа
2, 3 ( 13)
1, 6 (37)
5, 2 (29)
4, 5 (41)
1, 6 (37)
0, 9 (81) Победа
4, 5 (41)
3, 8 (73) Победа
При безошибочной игре обоих игроков –
выигрывает игрок, делающий первый ход.
14
Задача 7
Два игрока играют в следующую игру. На координатной плоскости стоит фишка. Игроки
ходят по очереди. В начале игры фишка находится в точке с координатами (1,0). Ход состоит
в том, что игрок перемещает фишку из точки с координатами (x,y) в одну из трех точек: или в
точку с координатами (x+3,y), или в точку с координатами (x,y+3), или в точку с
координатами (x,y+4). Выигрывает игрок, после хода которого состояние от фишки до точки
с координатами (0,0) не меньше 10 единиц. Кто выигрывает при безошибочной игре обоих
игроков – игрок, делающий первый ход, или игрок, делающий второй ход? Каким должен
быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы. В скобках указан квадрат расстояния
от начала координат (победа в том случае, если х2+у2>=100). На каждом из возможных
вариантов ходов, игроки выбирают вариант наименьшего удаления от центра с координатами
х=0, у=0.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
1, 0
4, 0 (16)
7, 0 (49)
10, 0 (100) Победа
4, 3 (25)
7, 3 (58)
10, 3 (109) Победа
4, 6 (52)
4, 10 (116) Победа
4, 8 (80)
4, 12 (150) Победа
7, 4 ( 76)
10, 4 (116) Победа
4, 7 (76)
4, 10 (116) Победа
4, 7 (76)
4, 10 (116) Победа
4, 4 (32)
1, 3 (10)
1, 4 (17)
4, 3 (25)
Ходы повторяются см.
выше
1, 6 (37)
1, 10 (101) Победа
1, 7 (50)
1, 11 (122) Победа
4, 4 (32)
Любой ход
1, 7 (50)
0, 13 (169) Победа
1, 8 (65)
3, 12 ( 153) Победа
10, 4 (116) Победа
При безошибочной игре обоих игроков –
выигрывает игрок, делающий ̆ второй ход.
15
Задача 8
Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из
которых 3, а во второй — 4 камня. У каждого игрока неограниченно много камней. Игроки
ходят по очереди. Ход состоит в том, что игрок или увеличивает в 2 раза число камней в
какой-то куче, или добавляет 3 камня в каждую из куч. Выигрывает игрок, -после хода
которого в одной из куч становится больше 20 камней. Кто выигрывает при безошибочной
игре обоих игроков — игрок, делающий первый ход, или игрок, делающий второй ход?
Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы.
При
безошибочной
игре обоих
игроков
–
выигрывает игрок, делающий первый ход.
Стартовая
позиция
1 ход
1 игрок (все варианты) 2 игрок (все варианты)
1 игрок (выигрышные
ходы)
3, 4
6, 4 (10)
12, 4 (16)
24, 8 (28) Победа
6, 8 (14)
6, 16 (22) Победа
9, 7(16)
18, 7 (25) Победа
6, 8 (14)
6, 16 (22) Победа
3, 16 (19)
3, 32 (35) Победа
6, 11 (14)
6, 16 (22) Победа
6, 14 (20)
5, 28 (33) Победа
12, 7 (19)
24, 7 (31) Победа
9, 10 (19)
6, 20 ( 26) Победа
3, 8 (11)
6, 7(10)
2ход
3 ход
16
Задача 9
Два игрока играют в следующую игру. На координатной плоскости стоит фишка. Игроки
ходят по очереди. В начале игры фишка находится в точке с координатами (2, 3). Ход состоит
в том, что игрок перемещает фишку из точки с координатами (х, у) в одну из двух точек:
либо в два раза увеличивается меньшая из координат, либо каждая из координат
увеличивается на 2 единицы. Выигрывает игрок, после хода которого расстояние от фишки
до точки с координатами (0, 0) станет не меньше 13 единиц. Кто выигрывает при
безошибочной игре обоих игроков — игрок, делающий первый ход, или игрок, делающий
второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы. В скобках указан квадрат расстояния
от начала координат (победа в том случае, если х 2+у2>169). На каждом из возможных
вариантов ходов, игроки выбирают вариант наименьшего удаления от центра с координатами
х=0, у=0.
Стартовая
позиция
1 ход
2ход
3 ход
4 ход
1 игрок (все
варианты)
2 игрок (все
варианты)
1 игрок
2 игрок
2, 3
4, 3 (25)
4, 6 (48)
8, 6 (100)
8, 12 (208) Победа
6, 8 (100)
12, 8 (208) Победа
6, 10 (136)
12, 10 (244) Победа
8, 7 (113)
8, 14 (260) Победа
8, 10 (164)
16, 10 (356) Победа
10, 7 (149)
10, 14 (296) Победа
6, 5 (51))
4, 5 (41)
8, 5 (89)
6, 7 (81)
12, 7 (193)Победа
При безошибочной игре обоих игроков – выигрывает игрок, делающий ̆ второй ход.
17
Задача 10
Два игрока играют в следующую игру. Перед ними лежат две кучки камней, в первой из
которых 5, а во второй — 3 камня. У каждого игрока неограниченно много камней. Игроки
ходят по очереди. Ход состоит в том, что игрок или увеличивает в 2 раза число камней в
какой-то куче, или добавляет 2 камня в какую-то из куч. Выигрывает игрок, -после хода
которого в двух кучах становится больше 19 камней. Кто выигрывает при безошибочной игре
обоих игроков — игрок, делающий первый ход, или игрок, делающий второй ход? Каким
должен быть первый ход выигрывающего игрока? Ответ обоснуйте.
Решение
Рассмотрим дерево игры, представленное в табличном виде. Отобразим все возможные
варианты, выделяя голубым цветом невыгодные ходы.
При
безошибочной
игре
обоих
игроков
–
выигрывает игрок, делающий первый ход.
Это ход – 5, 6 (11) он выделен зеленым цветом.
Стартовая
позиция
1 ход
5, 3
10, 3 (13)
2ход
3 ход
1 игрок (все варианты) 2 игрок (все варианты)
1 игрок (выигрышные
ходы)
20, 3 (23) Победа
10, 6 (16)
12, 3(15)
5, 6 (11)
7, 3(10)
5, 5 (10)
10, 6 (16)
20, 6 (26) Победа
5, 12(17)
5, 24 (29) Победа
7, 6 (13)
14, 6 (20) Победа
5, 8 (13)
5, 16 (21) Победа
14, 3 (17)
28, 3 (31) Победа
7, 6 (13)
14, 6 (20) Победа
9, 3 (12)
18, 6 ( 24) Победа
7, 5 (12)
14 ,5 (19)
Можно не рассматривать
18
Приложение
Задачи для самостоятельной работы
Автор Беспалова Наталья Семеновна,
учитель информатики и ИКТ, ГОУ "Кадетский корпус", г. Томск
Задача 1
Два игрока играют в следующую игру. Перед ними
лежат три кучки камней, в первой из которых 2,
во второй — 3, а в третьей — 5 камней. У каждого
игрока неограниченно много камней. Игроки
ходят по очереди. За один ход можно удвоить
количество камней в меньшей куче (если таких
куч несколько, то в одной из них), либо
добавить 2 камня в большую из куч (если таких
куч несколько, то в одной из них). Выигрывает
игрок, после хода которого во всех трех
кучках вместе становится не менее 18 камней.
Кто выигрывает при безошибочной игре обоих
игроков — игрок, делающий первый ход, или
игрок, делающий второй ход? Каким должен быть
первый
ход
выигрывающего
игрока?
Ответ
обоснуйте.
Задача 2
Два игрока играют в следующую игру. На
координатной плоскости стоит фишка. В начале
игры фишка находится в точке с координатами (–
1, 2). Игроки ходят по очереди. Ход состоит в том,
что
игрок
перемещает
фишку
из
точки
с
координатами (x, y) в одну из трех точек: (x–1, y+4), (x+3,
y–1), (x+2, y+3). Игра заканчивается, как только
расстояние от фишки до начала координат
превысит число 11. Выигрывает игрок, который
сделал последний ход. Кто выигрывает при
безошибочной игре – игрок, делающий первый
ход, или игрок, делающий второй ход? Каким
должен
быть
первый
ход
выигрывающего
игрока? Ответ обоснуйте.
Задача 3
Двое игроков имеют неограниченное число камней. По правилам игры игроки
поочередно кладут по нескольку камней в общую кучу. За один ход можно положить один
19
камень или удвоить число камней в куче. Первоначально в куче имеется 2 камня.
Выигрывает тот игрок, после хода которого в куче окажется более 10 камней.
Задача 4
Два игрока играют в следующую игру. На координатной плоскости стоит фишка. В
начале игры фишка находится в точке с координатами (–3, 2). Игроки ходят по очереди. Ход
состоит в том, что игрок перемещает фишку из точки с координатами (x, y) в одну из трех
точек: (x–1, y+3), (x+3, y–1), (x+2, y+2). Игра заканчивается, как только расстояние от фишки
до начала координат превысит число 8. Выигрывает игрок, который сделал последний ход.
Кто выигрывает при безошибочной игре – игрок, делающий первый ход, или игрок,
делающий второй ход? Каким должен быть первый ход выигрывающего игрока? Ответ
обоснуйте.
20
Download