В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
kosmagalaxy
kosmagalaxy
21.12.2021 17:00 •  Информатика

. на питоне Игра с нулями и единицами
Ограничение по времени: 1 секунда
Ограничение по памяти: 256 мегабайт
Что еще мы вам не рассказали про строки из нулей и единиц? :)
Оказывается, со строкой из нулей и единиц можно играть. Петя и Вася берут случайную строку
длины n и играют в игру по следующим правилам. Петя ходит первым и может зачеркнуть единицу
на крайнем левом или крайнем правом месте строки (если по краям строки стоят нули, то Петя сразу
проиграл). Вася ходит вторым, и в оставшейся строке он может зачеркнуть на первом или последнем
месте строки ноль, если он там есть, иначе он проиграл. Далее мальчики продолжают ходить по
очереди по этим правилам, пока кто-нибудь не проиграет, так как не сможет сделать очередной ход.
Другой игрок при этом наберет одно очко + столько очков, сколько составит длина оставшейся
строки. Если проигравшему игроку достаётся пустая строка, то игрок, сделавший последний ход,
выигрывает со счётом 1. Каждый из игроков хочет выиграть и набрать при этом как можно больше
очков.
Предположим, например, что они играют со следующей строкой: 10100011. В свой первый ход
Петя может удалить крайнюю левую или крайнюю правую единицу. Предположим, он выбирает
крайнюю левую. Тогда строка станет 0100011. Тогда Васе не останется ничего другого, как убрать
новый крайний левый ноль, так как крайний правый символ единица, и останется строка 100011.
Петя снова может выбирать, и на этот раз он выбирает крайнюю правую единицу, оставляя 10001
Васе. На данный момент у Васи нет подходящего хода, поэтому победил Петя. Поскольку длина
оставшейся строки 5, Петя побеждает со счётом 1 + 5 = 6 очков. Но если бы Петя первым ходом
вычеркнул последнюю единицу, то ходов у Васи больше не было, и Петя бы выиграл со счётом
1 + 7 = 8.
Требуется написать программу, которая по строке из нулей и единиц определит, кто выиграет
при оптимальной игре обоих, и сколько очков он при этом наберёт.
Формат входных данных
В единственной строке входных данных находится непустая строка из нулей и единиц, длина
которой не превосходит 10.
Формат выходных данных
Выведите сначала символ 1, если при оптимальной игре обоих игроков выиграет Петя, или
символ 0, если выиграет Вася. Затем через пробел выведите, сколько очков наберёт победивший
игрок.
Примеры
стандартный ввод стандартный вывод
01 0 1
100 0 2
10100011 1 8

Показать ответ
Ответ:
dramidontova
dramidontova
05.05.2021 03:43

Абай (Ибраги́м) Кунанба́ев[2] (каз. Абай Құнанбайұлы (инф.); 29 июля [10 августа] 1845, урочище Жидебай в Чингизтау — 23 июня [6 июля] 1904, там же) — казахский поэт, композитор, просветитель, мыслитель[4], общественный деятель, основоположник казахской письменной литературы и её первый классик, реформатор культуры в духе сближения с европейской культурой на основе просвещённого ислама.

Абай Кунанбаев

Имя при рождении

каз. Ибраһим Құнанбайұлы

Дата рождения

29 июля (10 августа) 1845[1]

Место рождения

ур. Жидебай, Бийский уезд, Томская губерния, Российская империя

Дата смерти

23 июня (6 июля) 1904[1] (58 лет)

Место смерти

Жидебай[d], Семипалатинский уезд, Российская империя

Гражданство

Российская Империя

Род деятельности

лингвист, поэт, переводчик, композитор.

Настоящее имя — Ибрагим, но прозвище Абай (каз. Абай «внимательный», «осторожный»), данное бабушкой Зере, закрепилось за ним на всю жизнь. Его племянник — также известный казахский поэт и философ Шакарим Кудайбердиев.

0,0(0 оценок)
Ответ:
1007199
1007199
24.12.2020 11:39

C#:

int a;

           ConsoleKeyInfo keyInfo;

           do

           {

               Console.WriteLine("Введите номер одного из зимних месяцев:\n12, 1, 2");              

               a = Convert.ToInt32(Console.ReadLine());

               switch (a)  

               {  

               case 12:                                  

                  Console.WriteLine("Декабрь\n");              

                  break;

               case 1:

                  Console.WriteLine("Январь\n");

                  break;

               case 2:

                  Console.WriteLine("февраль\n");

                  break;

                default:                        

                  Console.WriteLine("Не зимний месяц\n");

                  break;

               }

//Ниже идёт зацикливание программы, для удобства. Если Вам этого не требуется, то вместо нижеперечисленного впишите "Console.ReadKey();"

               Console.WriteLine("Если хотите повторить программу нажмите F");

               Console.WriteLine("Если хотите завершить программу нажмите любую другую кнопку\n");

               keyInfo = Console.ReadKey(true);

           }

           while (keyInfo.Key == ConsoleKey.F);


Дан номер зимних месяцев (12- декабрь, 1- январь, 2 – февраль). Напишите код программы, которая выво
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота