В таблице представлены шесть букв русского алфавита и двоичные коды, которые для них задал компьютер. Для некоторых букв — 2 бита, для некоторых — 3.
п - 01 с - 10 и - 00 р - 11 к - 001 т - 100
C/C++
НУЖНА ПОМОЩЬ ОЛИМПИАДА ПО ИНФОРМАТИКЕ!!!!
Код некорректен: 00100 - это "ит" или "ки"?
Если же надо подсчитать кол-во возможных комбинаций, то это делается примитивным перебором, который любой учащийся, сунувшийся на олимпиаду, обязан уметь делать сам.
Ах да, текст вопроса всё же появился. Если немного подумать, то и перебор не требуется:
Если же надо подсчитать кол-во возможных комбинаций, то это делается примитивным перебором, который любой учащийся, сунувшийся на олимпиаду, обязан уметь делать сам.
Ах да, текст вопроса всё же появился. Если немного подумать, то и перебор не требуется:
def check(s):
if len(s) % 2 == 0 or s[:3] in ['100', '001']: return true
if len(s) < 3: return false
return check(s[2:])
Если же надо получить список всех возможных слов, то: def lst(s):
if len(s) < 2: return []
tbl = {'00': 'и', '01': 'п', '10': 'с', '11': 'р', '001': 'к', '100': 'т'}
if s in tbl: return [tbl[s]]
res = []
for v in lst(s[2:]): res.append(tbl[s[:2]] + v)
if len(s) >= 5:
for v in lst(s[3:]): res.append(tbl[s[:3]] + v)
return res
Михаил Кошелев
в этом вся проблема! непонятно какую букву надо ставить, ибо Вы сами понимете
Для решения этой задачи необходимо перебрать все возможные варианты разбиения данного двоичного кода на группы битов длины 2 и 3 и попытаться расшифровать каждый вариант.
Начнем с разбиения на три группы:
111 000 100 101 0
100 101 010 100 01
100 011 100 011 00
Попробуем расшифровать каждую группу:
111 - это буква "р" (код 11)
000 - это буква "и" (код 00)
100 - это буква "т" (код 100)
101 - это буква "к" (код 001)
0 - это буква "п" (код 01)
100 - это буква "с" (код 10)
101 - это буква "к" (код 001)
010 - это буква "е" (код 00)
100 - это буква "т" (код 100)
01 - это буква "с" (код 10)
100 - это буква "т" (код 100)
011 - это буква "о" (код 11)
100 - это буква "т" (код 100)
011 - это буква "о" (код 11)
00 - это буква "и" (код 00)
Таким образом, мы получили три слова: "приткс", "сектс" и "тотои". Однако ни одно из них не является осмысленным словом на русском языке.
Теперь рассмотрим разбиение на две группы:
11100 01001 01010 001
01001 01010 10001
10001 11000 1100
Попробуем расшифровать каждую группу:
11100 - это буква "р" (код 11)
01001 - это буква "с" (код 10)
01010 - это буква "к" (код 001)
001 - это буква "и" (код 00)
01001 - это буква "с" (код 10)
01010 - это буква "к" (код 001)
10001 - это буква "е" (код 00)
1 - это буква "г" (код 1)
10001 - это буква "е" (код 00)
11000 - это буква "н" (код 01)
1100 - это буква "а" (код 00)
Таким образом, мы получили слово "скайгена", которое может быть осмысленным словом на русском языке. Однако, это зависит от контекста и необходимо дополнительное подтверждение.
Начнем с разбиения на три группы:
111 000 100 101 0
100 101 010 100 01
100 011 100 011 00
Попробуем расшифровать каждую группу:
111 - это буква "р" (код 11)
000 - это буква "и" (код 00)
100 - это буква "т" (код 100)
101 - это буква "к" (код 001)
0 - это буква "п" (код 01)
100 - это буква "с" (код 10)
101 - это буква "к" (код 001)
010 - это буква "е" (код 00)
100 - это буква "т" (код 100)
01 - это буква "с" (код 10)
100 - это буква "т" (код 100)
011 - это буква "о" (код 11)
100 - это буква "т" (код 100)
011 - это буква "о" (код 11)
00 - это буква "и" (код 00)
Таким образом, мы получили три слова: "приткс", "сектс" и "тотои". Однако ни одно из них не является осмысленным словом на русском языке.
Теперь рассмотрим разбиение на две группы:
11100 01001 01010 001
01001 01010 10001
10001 11000 1100
Попробуем расшифровать каждую группу:
11100 - это буква "р" (код 11)
01001 - это буква "с" (код 10)
01010 - это буква "к" (код 001)
001 - это буква "и" (код 00)
01001 - это буква "с" (код 10)
01010 - это буква "к" (код 001)
10001 - это буква "е" (код 00)
1 - это буква "г" (код 1)
10001 - это буква "е" (код 00)
11000 - это буква "н" (код 01)
1100 - это буква "а" (код 00)
Таким образом, мы получили слово "скайгена", которое может быть осмысленным словом на русском языке. Однако, это зависит от контекста и необходимо дополнительное подтверждение.
10001110001100 слово: "скрипт"
Похожие вопросы
- Нужна помощь с выполнением заданий в C++
- Нужна помощь в составлении одномерных массивов С++
- C++.Нужна помощь в написании кода.
- Очень нужна помощь. нужен код на C. Задачка будет в описании.
- Нужна помощь с написанием кода на языке "С"
- Программисты, нужна помощь
- Мне нужна помощь с одной задачкой по c++.
- Нужна помощь по шаблонам на C++
- Добрый день. Нужна помощь в реализации динамических структур. Нужно написать дек с использованием malloc.
- Нужна помощь с задачей на С++