На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 1
ссылка на сообщение  Отправлено: 11.04.22 14:53. Заголовок: Решение задач 19-21 в Excel перебором и анализ в сводной таблице


Предлагаю универсальный(громоздкий) способ решать задачи 19-21 в Excel составляя полную базу возможных исходов и анализируя потом в сводных таблицах. Подходит для 1 , двух и т.д куч, любые виды манипуляций с камнями. На примере № 2411 файл Excel(с макросом-пользовательская функция)https://disk.yandex.ru/i/h3oYe2aFeJ-EUQ

(№ 2411) Два игрока, Петя и Ваня, играют в следующую игру. Перед игроками лежат две кучи камней. Игроки ходят по очереди, первый ход делает Петя. За один ход игрок может добавить в одну из куч два камня или увеличить количество камней в куче в два раза. Чтобы делать ходы, у каждого игрока есть неограниченное количество камней. Игра завершается в тот момент, когда суммарное количество камней в кучах становится не менее 75. Победителем считается игрок, сделавший последний ход, т. е. первым получивший позицию, в которой в кучах будет 75 или больше камней.
В начальный момент в первой куче было 9 камней, во второй куче – S камней, 1 ≤ S ≤ 65. Будем говорить, что игрок имеет выигрышную стратегию, если он может выиграть при любых ходах противника.
Ответьте на следующие вопросы:
  Вопрос 1. Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Назовите минимальное значение S, при котором это возможно.
  Вопрос 2. Укажите минимальное значение S, при котором у Пети есть выигрышная стратегия, причём Петя не может выиграть первым ходом, но может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
  Вопрос 3. Найдите два значения S, при которых у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети, и при этом у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом. Найденные значения запишите в ответе в порядке возрастания.
Существует 4 типа ходов)
Ход1 -добавить в 1 кучу 2камня Ход2 -увеличить в 2 раза количество камней в в 1 куче
Ход3 -добавить в 2 кучу 2камня Ход4 -увеличить в 2 раза количество камней в в 2 куче
Alt-F11 добавляем в Module1 пользовательскую функцию Public Function kucha2(s, k1, k2, k3, k4)
k1-ход Пети 1
k2-ход Вани 1
k3-ход Пети 2
k4-ход Вани2
П1-победа Пети на 1 ходе,В1-победа Вани на 1 ходе,П2-победа Пети на 2 ходе,В2-победа Вани на 2 ходе
No-никто не победил за 4 хода

Public Function kucha2(s, k1, k2, k3, k4) As String
s1 = 9
s2 = s
If k1 = 1 Then
s1 = s1 + 2
ElseIf k1 = 2 Then
s1 = s1 * 2
ElseIf k1 = 3 Then
s2 = s2 + 2
Else
s2 = s2 * 2
End If
If s1 + s2 > 74 Then
kucha2 = "П1"
Exit Function
Else
If k2 = 1 Then
s1 = s1 + 2
ElseIf k2 = 2 Then
s1 = s1 * 2
ElseIf k2 = 3 Then
s2 = s2 + 2
Else
s2 = s2 * 2
End If
If s1 + s2 > 74 Then
kucha2 = "В1"
Exit Function
Else
If k3 = 1 Then
s1 = s1 + 2
ElseIf k3 = 2 Then
s1 = s1 * 2
ElseIf k3 = 3 Then
s2 = s2 + 2
Else
s2 = s2 * 2
End If
If s1 + s2 > 74 Then
kucha2 = "П2"
Exit Function
Else
If k4 = 1 Then
s1 = s1 + 2
ElseIf k4 = 2 Then
s1 = s1 * 2
ElseIf k4 = 3 Then
s2 = s2 + 2
Else
s2 = s2 * 2
End If
If s1 + s2 > 74 Then
kucha2 = "В2"
Exit Function
Else
kucha2 = "NO"
End If
End If
End If
End If
End Function


Таблица возможных исходов -Вкладка база все варианты k1,k2,k3,k4 для разумного количества s от 1 до 40
на каждое S блок формул 4*4*4*4=256 всего таблица 40*256=10240 строк
Колонка рез с функцией kucha2 показывает кто выиграл при данной комбинации ходов, загоняем все в сводную таблицу
В поле фильтра сводной таблицы добавим столбец RES, поле столбцов S, ходы Пет1, Ван1, Пет2, Ван2 добавляем в поле строк в количестве необходимом для анализа задания
Последнее поле В2 добавим в Поле значений сводной таблицы, чтобы смотреть есть ли решения

  Вопрос 1. Известно, что Ваня выиграл своим первым ходом после неудачного первого хода Пети. Назовите минимальное значение S, при котором это возможно.
Фильтр сводной В1. Поле колонок сводной таблицы Пет1 и Ван1, решения появляются с S=17 (вкладка 1)
  Вопрос 2. Укажите минимальное значение S, при котором у Пети есть выигрышная стратегия, причём Петя не может выиграть первым ходом, но может выиграть своим вторым ходом независимо от того, как будет ходить Ваня.
Фильтр П2. Поле строк В1. Есть решения при любом ходе Вани 1(k1,k2,k3,k4) при S>=16 (вкладка2)
  Вопрос 3. Найдите два значения S, при которых у Вани есть выигрышная стратегия, позволяющая ему выиграть первым или вторым ходом при любой игре Пети, и при этом у Вани нет стратегии, которая позволит ему гарантированно выиграть первым ходом. Найденные значения запишите в ответе в порядке возрастания.
Фильтр В1и В2, Поля строк Пет1,Ван1,Пет2. Для любого хода Пет1 и Пет2 (k1,k2,k3,k4) существует ход Ван2 с решением. Те в сводной таблице должны быть непрерывные столбики решений Пет2 (k1,k2,k3,k4) напротив каждого хода Пет1 . Это наблюдается для минимальных S=26 и 29

Спасибо: 0 
ПрофильЦитата Ответить
Новых ответов нет


Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 4484
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет