Задание 1 № 10321 В UTF-32 каждый символ кодируется 32-битным значением. Костя составил следующее предложение (без

  • 66
Задание 1 № 10321 В UTF-32 каждый символ кодируется 32-битным значением. Костя составил следующее предложение (без лишних пробелов): "Бай, аэта, волоф, кереки, киргизы, народы". Ученик удалил из списка название одного народа и при этом также удалил лишние запятые и пробелы - два пробела не могут идти подряд. Размер нового предложения в UTF-32 оказался на 32 байта меньше, чем размер исходного предложения. Ваш ответ должен содержать название вычеркнутого народа. Задание Д1 № 382 Реферат, набранный на компьютере, состоит из 14 страниц, каждая страница содержит 36 строк.
Musya
64
Задание 1:

Для решения данной задачи, необходимо понять, как кодируется символ в UTF-32. В UTF-32 каждый символ кодируется 32-битным значением.

Данное предложение: "Бай, аэта, волоф, кереки, киргизы, народы" необходимо преобразовать в UTF-32 и вычислить размер этого предложения в байтах.

Let"s perform the conversion to UTF-32:

1. Б - 0x0411
2. а - 0x0430
3. й - 0x0439
4. , - 0x002C
5. - 0x0020
6. а - 0x0430
7. э - 0x044D
8. т - 0x0442
9. а - 0x0430
10. , - 0x002C
11. - 0x0020
12. в - 0x0432
13. о - 0x043E
14. л - 0x043B
15. о - 0x043E
16. ф - 0x0444
17. , - 0x002C
18. - 0x0020
19. к - 0x043A
20. е - 0x0435
21. р - 0x0440
22. е - 0x0435
23. к - 0x043A
24. и - 0x0438
25. , - 0x002C
26. - 0x0020
27. к - 0x043A
28. и - 0x0438
29. р - 0x0440
30. г - 0x0433
31. и - 0x0438
32. з - 0x0437
33. ы - 0x044B
34. , - 0x002C
35. - 0x0020
36. н - 0x043D
37. а - 0x0430
38. р - 0x0440
39. о - 0x043E
40. д - 0x0434
41. ы - 0x044B

Теперь посчитаем общий размер предложения исходя из полученных значений:

(32 бита * 41 символ) / 8 = 164 байта

Теперь узнаем размер нового предложения. Нам известно, что новое предложение было меньше на 32 байта. По данной информации, необходимо найти символ, который исключили из списка народов.

Рассмотрим количество запятых и пробелов в исходном предложении. У нас есть 5 запятых и 5 пробелов. Из этого можно сделать вывод, что исключили один народ. Количество символов в новом предложении равно 41 - 1 = 40 символам.

Нам известно, что новое предложение составлено без лишних пробелов и запятых, и не может быть двух пробелов, идущих подряд. Значит, между каждым символом в новом предложении обязательно находится пробел или запятая.

Теперь просмотрим все возможные варианты удаленного народа и его положение в предложении, чтобы соблюсти условия задачи:

1. Б - 0x0411
2. а - 0x0430
3. й - 0x0439

0x0411-0x0430-0x0439-0x002C-0x0020-0x0430-0x044D-0x0442-0x0430-0x002C-0x0020-0x0432-0x043E-0x043B-0x043E-0x0444-0x002C-0x0020-0x043A-0x0435-0x0440-0x0435-0x043A-0x0438-0x002C-0x0020-0x043A-0x0438-0x0440-0x0440-0x0433-0x0438-0x0437-0x043B-0x044B

(32 * 36) + (32 * 4) + (32 * 3) = 1552 бита = 194 байта

2. Б - 0x0411
3. а - 0x0430
4. й - 0x0439

0x0411-0x0430-0x0439-0x002C-0x0020-0x0430-0x044D-0x0442-0x0430-0x002C-0x0020-0x0432-0x043E-0x043B-0x043E-0x0444-0x002C-0x0020-0x043A-0x0435-0x0440-0x0435-0x043A-0x002C-0x0020-0x043A-0x0438-0x0440-0x0440-0x0433-0x0438-0x0437-0x043B-0x044B-0x002C

(32 * 36) + (32 * 4) + (32 * 3) + (32 * 2) = 1584 бита = 198 байт

3. Б - 0x0411
4. а - 0x0430
5. й - 0x0439

0x0411-0x0430-0x0439-0x002C-0x0020-0x0430-0x044D-0x0442-0x0430-0x002C-0x0020-0x0432-0x043E-0x043B-0x043E-0x0444-0x002C-0x0020-0x043A-0x0435-0x0440-0x0435-0x043A-0x0438-0x002C-0x0020-0x043A-0x0438-0x0440-0x0440-0x0433-0x0438-0x0437-0x043B

(32 * 36) + (32 * 4) + (32 * 3) + (32 * 2) + (32) = 1616 бит = 202 байта

Теперь получившееся значение (194, 198, 202 байта) необходимо сравнить с исходным значением: 164 байта.

Мы видим, что наиболее близким значением размера предложения является 198 байт. Следовательно, вычеркнутым народом является народ "киргизы".