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

. на питоне Игра с нулями и единицами
Ограничение по времени: 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

Показать ответ
Ответ:
nicgames
nicgames
01.05.2023 01:16

В скобках систмы счисления. 8в1 это восемь в первой степени

3.

135(8) = 5*8в0 + 3*8в1 + 1*8в2 = 5+24+64=93

4.

110001001111 = делим на тетраеды

1100  0100   1111

переводим каждую отдельно в десятичную

1100 = 0*2в0 + 0*2в1 + 1*2в2 * 1*2в3 = 0+0+4+8 = 12

12 в 16тиричной систме записывается буквой С


0100 = 0*2в0 + 0*2в1 + 1*2в2 + 0*2в3 = 0+0+4+0 = 4

в 16тиричной записывается как 4


1111 = 1*2в0 + 1*2в1 + 1*2в2 + 1*2в3 = 1+2+4+8 = 15

в 16тиричной это записывается как F

Итого число получается - С4F


5.

110001001111(2) = 1*2в0 + 1*2в1 + 1*2в2 + 1*2в3 + 1*2в6 + 1*2в10 + 1*2в11 = 1+2+4+8+64+1024+2048 = 3151



1. выполните сложение в двоичной системе счисления: 101112 + 1011102 результат запишите в двоичной с
0,0(0 оценок)
Ответ:
podshchipkova
podshchipkova
16.07.2021 19:21

Смотря в какой кодировке.

Если кодировка КОИ-8, значит один символ кодируется, то есть весит 8 бит. И так всегда.

Значит:

2000символов×8бит=16000бит=16000:8=2000байта(так как что бы перевести биты в байты, нужно разделить кол-во битов на 8, а что бы перевести в килобайты, нужно ещё разделить и на 1024).Но тут в килобайты перевести нельзя. Невозможно.

размер сообщения в кодировке КОИ-8.

Если же кодировка Unicode, то это значит, что один символ кодируется, то есть весит 16 бит.

Значит:

2000символов×16бит=32000бит=32000:8=4000байт. Как и в первом случае, перевести тут в килобайты нельзя. Невозможно.

размер сообщения в кодировке Unicode

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