. 1. По каналу связи передаются сообщения, содержащие только семь букв: А, Б, К, О, Н, Р, Я. Для передачи используется двоичный код, удовлетворяющий условию Фано. Кодовое слово для некоторых букв известны: А-010, Р-011, Я-10. Какое наименьшее количество двоичных знаков потребуется для кодирования слова НАБОР?
2. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г, Д, Е, Ж решили
использовать неравномерный двоичный код, удовлетворяющий условию Фано. Для букв А, Б, В, Г использовали соответственно кодовое слово 010. 011, 10, 11. Укажите кратчайшее возможное кодовое слово для буквы Д, при котором будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением.
3. Для кодирования некоторой последовательности, состоящей из букв А, Б, В, Г, Д, Е, решили использовать неравномерный двоичный код, допускающий однозначное декодирование. Для букв А, Б, В, Г использовали соответственно кодовое слово 00. 01, 110, 111. Укажите кратчайшее возможное кодовое слово для буквы Д, при котором будет допускать однозначное декодирование. Если таких кодов несколько, укажите код с наименьшим числовым значением.
using namespace std;
// число представлено как string для удобства
unsigned long long deletion(const string& str)
{
if (str.size() < 3)
return 0;
vector<string> vec;
for (auto i = str.begin(), end = str.end() - 2; i < end; ++i){
// если первая цифра > 0 то чисто трехзначное
if (*i > '0'){
for (auto j = i + 1, end = str.end() - 1; j != end; ++j){
for (auto u = j + 1, end = str.end(); u != end; ++u){
string temp;
temp.push_back(*i);
temp.push_back(*j);
temp.push_back(*u);
vec.push_back(temp);
}
}
}
}
set<string> temp(vec.begin(), vec.end()); // удаляю повторяющиеся
return temp.size();
}
int main()
{
cout << deletion("1114526987200121343469469454668464397676877676876769764578543947354897321654467437513721375879786546");
}
Объяснение:
c++
8. Что определяет количество индексов массива?
Количество индексов определяет размерность массива. Если есть только один индекс, то это одномерный массив, два - двумерный и т.д.
9. Запишите имя массива, если он имеет элементы mas[1], mas[2], ...
Обращение к элементам одномерного массива имеет вид имя[индекс], значит, массив имеет имя mas
10. Задавая разные значення элементам массива, можно ли изменить размерность массива?
Нельзя. Размерность массива задается заранее, она определяет, как обращаться к элементам массива, и не зависит от их значений.